From 12a224d5db7aebdb30cda8ffb75c69fc66d07096 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 15 Aug 2023 15:10:07 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .eslintrc.yml | 2 + GITALY_SERVER_VERSION | 2 +- .../add_context_commits_modal_wrapper.vue | 1 + .../add_context_commits_modal/store/index.js | 1 + .../admin/statistics_panel/components/app.vue | 1 + .../admin/statistics_panel/store/index.js | 1 + .../cycle_analytics/components/base.vue | 1 + .../cycle_analytics/components/filter_bar.vue | 1 + .../analytics/cycle_analytics/store/index.js | 1 + .../badges/components/badge_form.vue | 1 + .../badges/components/badge_list.vue | 1 + .../badges/components/badge_settings.vue | 1 + app/assets/javascripts/badges/store/index.js | 1 + .../components/diff_file_drafts.vue | 1 + .../batch_comments/components/draft_note.vue | 1 + .../components/drafts_count.vue | 1 + .../components/preview_dropdown.vue | 1 + .../components/preview_item.vue | 1 + .../batch_comments/components/review_bar.vue | 1 + .../components/submit_dropdown.vue | 1 + .../javascripts/batch_comments/index.js | 1 + .../batch_comments/mixins/resolved_status.js | 1 + .../batch_comments/stores/index.js | 1 + .../components/board_add_new_column.vue | 1 + .../boards/components/board_app.vue | 1 + .../boards/components/board_card.vue | 1 + .../boards/components/board_card_inner.vue | 1 + .../board_card_move_to_position.vue | 1 + .../boards/components/board_column.vue | 1 + .../boards/components/board_content.vue | 1 + .../components/board_content_sidebar.vue | 1 + .../components/board_filtered_search.vue | 1 + .../boards/components/board_form.vue | 1 + .../boards/components/board_list.vue | 1 + .../boards/components/board_list_header.vue | 1 + .../boards/components/board_new_issue.vue | 1 + .../components/board_settings_sidebar.vue | 1 + .../boards/components/boards_selector.vue | 1 + .../boards/components/config_toggle.vue | 1 + .../sidebar/board_sidebar_title.vue | 1 + app/assets/javascripts/boards/stores/index.js | 1 + .../reports/codequality_report/store/index.js | 1 + .../forms/components/integration_form.vue | 1 + .../clusters/forms/stores/index.js | 1 + .../components/ancestor_notice.vue | 1 + .../clusters_list/components/clusters.vue | 1 + .../components/clusters_view_all.vue | 1 + .../components/install_agent_modal.vue | 28 + .../javascripts/clusters_list/constants.js | 4 + .../javascripts/clusters_list/store/index.js | 1 + .../code_navigation/components/app.vue | 1 + .../javascripts/code_navigation/index.js | 1 + .../code_navigation/store/index.js | 1 + .../contributors/components/contributors.vue | 1 + .../javascripts/contributors/stores/index.js | 1 + .../components/deploy_freeze_modal.vue | 1 + .../components/deploy_freeze_table.vue | 1 + .../javascripts/deploy_freeze/store/index.js | 1 + .../javascripts/diffs/components/app.vue | 1 + .../components/collapsed_files_warning.vue | 1 + .../diffs/components/compare_versions.vue | 1 + .../diffs/components/diff_comment_cell.vue | 1 + .../diffs/components/diff_content.vue | 1 + .../components/diff_discussion_reply.vue | 1 + .../diffs/components/diff_discussions.vue | 1 + .../diffs/components/diff_expansion_cell.vue | 1 + .../diffs/components/diff_file.vue | 1 + .../diffs/components/diff_file_header.vue | 1 + .../components/diff_inline_findings_item.vue | 1 + .../diffs/components/diff_line_note_form.vue | 1 + .../diffs/components/diff_view.vue | 1 + .../diffs/components/diffs_file_tree.vue | 1 + .../diffs/components/image_diff_overlay.vue | 1 + .../diffs/components/no_changes.vue | 1 + .../diffs/components/settings_dropdown.vue | 1 + .../diffs/components/tree_list.vue | 1 + app/assets/javascripts/diffs/index.js | 1 + .../diffs/mixins/draft_comments.js | 1 + .../javascripts/diffs/mixins/image_diff.js | 1 + .../javascripts/emoji/awards_app/index.js | 1 + .../emoji/awards_app/store/index.js | 1 + app/assets/javascripts/environments/index.js | 2 + .../components/error_details.vue | 1 + .../components/error_tracking_list.vue | 1 + .../javascripts/error_tracking/store/index.js | 1 + .../components/app.vue | 1 + .../components/error_tracking_form.vue | 1 + .../error_tracking_settings/store/index.js | 1 + .../components/edit_feature_flag.vue | 1 + .../components/feature_flags.vue | 1 + .../components/new_feature_flag.vue | 1 + .../strategies/gitlab_user_list.vue | 1 + app/assets/javascripts/feature_flags/edit.js | 1 + app/assets/javascripts/feature_flags/index.js | 1 + app/assets/javascripts/feature_flags/new.js | 1 + .../feature_flags/store/edit/index.js | 1 + .../feature_flags/store/index/index.js | 1 + .../feature_flags/store/new/index.js | 1 + .../javascripts/frequent_items/store/index.js | 1 + .../header_search/components/app.vue | 1 + .../header_search_autocomplete_items.vue | 1 + .../header_search_default_items.vue | 1 + .../components/header_search_scoped_items.vue | 1 + .../javascripts/header_search/store/index.js | 1 + .../ide/components/activity_bar.vue | 1 + .../ide/components/branches/search_list.vue | 1 + .../ide/components/commit_sidebar/actions.vue | 1 + .../commit_sidebar/editor_header.vue | 1 + .../components/commit_sidebar/empty_state.vue | 1 + .../ide/components/commit_sidebar/form.vue | 1 + .../ide/components/commit_sidebar/list.vue | 1 + .../components/commit_sidebar/list_item.vue | 1 + .../new_merge_request_option.vue | 1 + .../components/commit_sidebar/radio_group.vue | 1 + .../commit_sidebar/success_message.vue | 1 + .../ide/components/error_message.vue | 1 + .../ide/components/file_row_extra.vue | 1 + .../ide/components/file_templates/bar.vue | 1 + .../components/file_templates/dropdown.vue | 1 + app/assets/javascripts/ide/components/ide.vue | 1 + .../ide/components/ide_file_row.vue | 1 + .../javascripts/ide/components/ide_review.vue | 1 + .../ide/components/ide_side_bar.vue | 1 + .../ide/components/ide_status_bar.vue | 1 + .../ide/components/ide_status_list.vue | 1 + .../javascripts/ide/components/ide_tree.vue | 1 + .../ide/components/ide_tree_list.vue | 1 + .../ide/components/jobs/detail.vue | 1 + .../javascripts/ide/components/jobs/list.vue | 1 + .../ide/components/merge_requests/list.vue | 1 + .../ide/components/nav_dropdown.vue | 1 + .../ide/components/nav_dropdown_button.vue | 1 + .../ide/components/new_dropdown/index.vue | 1 + .../ide/components/new_dropdown/modal.vue | 1 + .../components/panes/collapsible_sidebar.vue | 1 + .../ide/components/panes/right.vue | 1 + .../ide/components/pipelines/empty_state.vue | 1 + .../ide/components/pipelines/list.vue | 1 + .../ide/components/repo_commit_section.vue | 1 + .../ide/components/repo_editor.vue | 1 + .../javascripts/ide/components/repo_tab.vue | 1 + .../javascripts/ide/components/repo_tabs.vue | 1 + .../ide/components/resizable_panel.vue | 1 + .../ide/components/terminal/session.vue | 1 + .../ide/components/terminal/terminal.vue | 1 + .../ide/components/terminal/view.vue | 1 + .../terminal_sync/terminal_sync_status.vue | 1 + .../terminal_sync_status_safe.vue | 1 + app/assets/javascripts/ide/index.js | 1 + app/assets/javascripts/ide/stores/index.js | 1 + .../components/github_status_table.vue | 1 + .../components/import_projects_table.vue | 1 + .../components/provider_repo_table_row.vue | 1 + .../import_projects/store/index.js | 1 + .../edit/components/active_checkbox.vue | 1 + .../edit/components/dynamic_field.vue | 1 + .../edit/components/integration_form.vue | 1 + .../components/integration_form_actions.vue | 1 + .../components/integration_forms/section.vue | 1 + .../edit/components/jira_auth_fields.vue | 1 + .../edit/components/jira_issues_fields.vue | 1 + .../edit/components/jira_trigger_fields.vue | 1 + .../edit/components/override_dropdown.vue | 1 + .../components/sections/apple_app_store.vue | 1 + .../components/sections/configuration.vue | 1 + .../edit/components/sections/connection.vue | 1 + .../edit/components/sections/google_play.vue | 1 + .../edit/components/sections/jira_issues.vue | 1 + .../edit/components/sections/jira_trigger.vue | 1 + .../edit/components/sections/trigger.vue | 1 + .../edit/components/trigger_field.vue | 1 + .../edit/components/trigger_fields.vue | 1 + .../integrations/edit/store/index.js | 1 + .../components/issuable_header_warnings.vue | 1 + app/assets/javascripts/issues/index.js | 8 +- .../components/related_merge_requests.vue | 1 + .../related_merge_requests/store/index.js | 1 + .../issues/show/components/app.vue | 24 +- .../issues/show/components/form.vue | 8 +- .../issues/show/components/header_actions.vue | 3 +- .../issues/show/components/issue_header.vue | 10 +- .../components/new_header_actions_popover.vue | 46 +- .../components/sentry_error_stack_trace.vue | 1 + .../issues/show/components/title.vue | 2 +- app/assets/javascripts/issues/show/index.js | 34 +- .../add_namespace_modal/groups_list.vue | 1 + .../add_namespace_modal/groups_list_item.vue | 1 + .../subscriptions/components/app.vue | 1 + .../components/sign_in_oauth_button.vue | 1 + .../components/subscriptions_list.vue | 1 + .../sign_in_gitlab_multiversion/index.vue | 1 + .../pages/subscriptions_page.vue | 1 + .../jira_connect/subscriptions/store/index.js | 1 + .../jobs/components/job/job_app.vue | 1 + .../job/sidebar/job_sidebar_retry_button.vue | 1 + .../jobs/components/job/sidebar/sidebar.vue | 1 + .../components/job/sidebar/sidebar_header.vue | 1 + .../sidebar/sidebar_job_details_container.vue | 1 + .../javascripts/jobs/components/log/log.vue | 1 + app/assets/javascripts/jobs/store/index.js | 1 + .../lib/utils/vuex_module_mappers.js | 1 + .../approve_access_request_button.vue | 1 + .../remove_group_link_button.vue | 1 + .../action_buttons/remove_member_button.vue | 1 + .../action_buttons/resend_invite_button.vue | 1 + .../remove_member_dropdown_item.vue | 1 + .../javascripts/members/components/app.vue | 1 + .../filter_sort/filter_sort_container.vue | 1 + .../members_filtered_search_bar.vue | 1 + .../components/filter_sort/sort_dropdown.vue | 1 + .../members/components/members_tabs.vue | 1 + .../members/components/modals/leave_modal.vue | 1 + .../modals/remove_group_link_modal.vue | 1 + .../components/modals/remove_member_modal.vue | 1 + .../table/expiration_datepicker.vue | 1 + .../components/table/members_table.vue | 1 + .../components/table/role_dropdown.vue | 1 + app/assets/javascripts/members/index.js | 1 + .../components/diff_file_editor.vue | 1 + .../components/inline_conflict_lines.vue | 1 + .../components/parallel_conflict_lines.vue | 1 + .../merge_conflict_resolver_app.vue | 1 + .../merge_conflicts/store/index.js | 1 + .../components/sticky_header.vue | 1 + .../components/milestone_combobox.vue | 1 + .../javascripts/milestones/stores/index.js | 1 + app/assets/javascripts/mr_notes/init_notes.js | 1 + .../javascripts/mr_notes/stores/index.js | 1 + app/assets/javascripts/nav/mount.js | 1 + app/assets/javascripts/nav/stores/index.js | 1 + .../notes/components/comment_form.vue | 1 + .../components/diff_discussion_header.vue | 1 + .../notes/components/diff_with_note.vue | 1 + .../notes/components/discussion_counter.vue | 1 + .../notes/components/discussion_filter.vue | 1 + .../notes/components/discussion_notes.vue | 1 + .../notes/components/mr_discussion_filter.vue | 1 + .../components/multiline_comment_form.vue | 1 + .../notes/components/note_actions.vue | 1 + .../notes/components/note_awards_list.vue | 1 + .../notes/components/note_body.vue | 1 + .../notes/components/note_form.vue | 1 + .../notes/components/note_header.vue | 1 + .../components/note_signed_out_widget.vue | 1 + .../notes/components/noteable_discussion.vue | 1 + .../notes/components/noteable_note.vue | 1 + .../notes/components/notes_app.vue | 1 + .../notes/components/sidebar_subscription.vue | 1 + .../notes/components/timeline_toggle.vue | 1 + .../notes/mixins/diff_line_note_form.js | 1 + .../notes/mixins/discussion_navigation.js | 1 + .../notes/mixins/issuable_state.js | 1 + app/assets/javascripts/notes/stores/index.js | 1 + .../details/components/app.vue | 1 + .../details/components/details_title.vue | 1 + .../components/terraform_installation.vue | 1 + .../details/store/index.js | 1 + .../list/components/infrastructure_search.vue | 1 + .../list/components/packages_list.vue | 1 + .../list/components/packages_list_app.vue | 1 + .../list/stores/index.js | 1 + .../pages/projects/blob/show/index.js | 1 + .../feature_flags_user_lists/edit/index.js | 1 + .../feature_flags_user_lists/index/index.js | 1 + .../feature_flags_user_lists/new/index.js | 1 + .../components/test_reports/test_reports.vue | 1 + .../test_reports/test_suite_table.vue | 1 + .../test_reports/test_summary_table.vue | 1 + .../javascripts/pipelines/pipeline_tabs.js | 1 + .../commit/components/branches_dropdown.vue | 1 + .../projects/commit/components/form_modal.vue | 1 + .../commit/components/projects_dropdown.vue | 1 + .../projects/commit/store/index.js | 1 + .../commits/components/author_select.vue | 1 + .../javascripts/projects/commits/index.js | 1 + .../projects/commits/store/index.js | 1 + .../feature_flags_user_lists/show/index.js | 1 + .../ref/components/ref_selector.vue | 1 + app/assets/javascripts/ref/stores/index.js | 1 + .../releases/components/app_edit_new.vue | 1 + .../releases/components/asset_links_form.vue | 1 + .../components/confirm_delete_modal.vue | 1 + .../releases/components/tag_create.vue | 1 + .../releases/components/tag_field.vue | 1 + .../components/tag_field_existing.vue | 1 + .../releases/components/tag_field_new.vue | 1 + .../releases/components/tag_search.vue | 1 + app/assets/javascripts/releases/mount_edit.js | 1 + app/assets/javascripts/releases/mount_new.js | 1 + .../javascripts/releases/stores/index.js | 1 + app/assets/javascripts/repository/index.js | 1 + .../search/sidebar/components/app.vue | 1 + .../components/archived_filter/index.vue | 1 + .../confidentiality_filter/index.vue | 1 + .../sidebar/components/filters_template.vue | 1 + .../sidebar/components/issues_filters.vue | 1 + .../sidebar/components/label_filter/index.vue | 1 + .../language_filter/checkbox_filter.vue | 1 + .../components/language_filter/index.vue | 1 + .../sidebar/components/radio_filter.vue | 1 + .../components/scope_legacy_navigation.vue | 1 + .../components/scope_sidebar_navigation.vue | 1 + .../search/sort/components/app.vue | 1 + app/assets/javascripts/search/store/index.js | 1 + .../search/topbar/components/app.vue | 1 + .../search/topbar/components/group_filter.vue | 1 + .../topbar/components/project_filter.vue | 1 + .../labels_select_vue/dropdown_button.vue | 1 + .../labels_select_vue/dropdown_contents.vue | 1 + .../dropdown_contents_create_view.vue | 1 + .../dropdown_contents_labels_view.vue | 1 + .../labels_select_vue/dropdown_title.vue | 1 + .../labels_select_vue/dropdown_value.vue | 1 + .../labels_select_vue/labels_select_root.vue | 1 + .../components/lock/edit_form_buttons.vue | 1 + .../components/lock/issuable_lock_form.vue | 1 + .../components/global_search.vue | 1 + .../global_search_autocomplete_items.vue | 1 + .../global_search_default_issuables.vue | 1 + .../components/global_search_scoped_items.vue | 1 + .../components/global_search/store/index.js | 1 + .../user_lists/components/edit_user_list.vue | 1 + .../user_lists/components/new_user_list.vue | 1 + .../user_lists/components/user_list.vue | 1 + .../user_lists/components/user_lists.vue | 1 + .../user_lists/store/edit/index.js | 1 + .../user_lists/store/index/index.js | 1 + .../javascripts/user_lists/store/new/index.js | 1 + .../user_lists/store/show/index.js | 1 + .../components/artifacts_list_app.vue | 1 + .../stores/artifacts_list/index.js | 1 + .../diff_viewer/viewers/renamed.vue | 1 + .../vue_shared/components/gl_modal_vuex.vue | 1 + .../metric_images/metric_images_tab.vue | 1 + .../metric_images/metric_images_table.vue | 1 + .../components/metric_images/store/index.js | 1 + .../components/notes/placeholder_note.vue | 1 + .../components/notes/system_note.vue | 1 + .../javascripts/whats_new/components/app.vue | 1 + app/assets/javascripts/whats_new/index.js | 1 + .../javascripts/whats_new/store/index.js | 1 + app/controllers/admin/labels_controller.rb | 19 +- app/controllers/concerns/onboarding/status.rb | 4 + app/controllers/groups/labels_controller.rb | 11 +- app/controllers/projects/labels_controller.rb | 12 +- .../authorizations_changed_event.rb | 15 + .../namespaces/work_items_resolver.rb | 2 +- app/helpers/issuables_helper.rb | 1 - app/models/label.rb | 1 + app/models/project_authorizations/changes.rb | 14 + app/services/issues/import_csv_service.rb | 10 + app/services/merge_requests/merge_service.rb | 61 +- .../merge_strategies/from_source_branch.rb | 112 +++ .../merge_strategies/strategy_error.rb | 7 + app/services/spam/spam_action_service.rb | 13 +- app/views/admin/projects/show.html.haml | 10 +- .../shared/_signup_omniauth_providers.haml | 4 +- app/views/projects/issuable/_show.html.haml | 2 - ...efactor.yml => refactor_merge_service.yml} | 8 +- ...int_backfill_is_finished_for_self_hosts.rb | 21 + ...ntions_note_id_to_bigint_for_self_hosts.rb | 78 ++ ...int_backfill_is_finished_for_self_hosts.rb | 21 + ...ntions_note_id_to_bigint_for_self_hosts.rb | 78 ++ db/schema_migrations/20230810122746 | 1 + db/schema_migrations/20230810123044 | 1 + db/schema_migrations/20230811103654 | 1 + db/schema_migrations/20230811103941 | 1 + .../background_verification.md | 5 +- ...hecksum-differences-admin-project-page.png | Bin 74553 -> 0 bytes doc/administration/gitaly/praefect.md | 6 +- .../repository_storage_types.md | 15 +- doc/administration/server_hooks.md | 3 +- .../documentation/styleguide/word_list.md | 11 + doc/development/fe_guide/vuex.md | 4 + doc/development/i18n/externalization.md | 23 +- .../testing_guide/best_practices.md | 6 +- doc/development/value_stream_analytics.md | 4 +- .../jira/jira_cloud_configuration.md | 11 - doc/topics/plan_and_track.md | 2 +- doc/topics/your_work.md | 11 - doc/tutorials/agile_sprint.md | 11 - doc/tutorials/agile_sprint/index.md | 4 +- .../convert_personal_namespace_into_group.md | 11 - doc/tutorials/create_compliance_pipeline.md | 11 - doc/tutorials/fuzz_testing_tutorial.md | 11 - doc/tutorials/make_your_first_git_commit.md | 11 - .../move_personal_project_to_a_group.md | 11 - doc/tutorials/scan_result_policy.md | 11 - doc/user/analytics/dora_metrics.md | 2 +- doc/user/analytics/index.md | 7 +- doc/user/analytics/value_stream_analytics.md | 13 - .../secret_detection/post_processing.md | 11 - doc/user/compliance/license_check_rules.md | 15 - doc/user/packages/gradle_repository/index.md | 11 - doc/user/project/code_owners.md | 11 - doc/user/project/issues/design_management.md | 2 +- doc/user/project/merge_requests/changes.md | 4 + lib/api/helpers/label_helpers.rb | 4 +- lib/gitlab/ci/config/yaml/interpolator.rb | 6 +- lib/gitlab/ci/input/arguments/base.rb | 62 -- lib/gitlab/ci/input/arguments/default.rb | 48 - lib/gitlab/ci/input/arguments/options.rb | 55 - lib/gitlab/ci/input/arguments/required.rb | 55 - lib/gitlab/ci/input/arguments/unknown.rb | 31 - lib/gitlab/ci/input/inputs.rb | 73 -- locale/gitlab.pot | 33 +- .../admin/labels_controller_spec.rb | 57 ++ .../groups/labels_controller_spec.rb | 7 + .../projects/labels_controller_spec.rb | 46 + .../incidents/user_views_incident_spec.rb | 31 - spec/features/issues/incident_issue_spec.rb | 4 - .../add_context_commits_modal_spec.js | 1 + .../statistics_panel/components/app_spec.js | 1 + .../cycle_analytics/components/base_spec.js | 1 + .../components/filter_bar_spec.js | 1 + .../badges/components/badge_form_spec.js | 1 + .../badges/components/badge_list_spec.js | 1 + .../badges/components/badge_settings_spec.js | 1 + .../components/diff_file_drafts_spec.js | 1 + .../components/preview_dropdown_spec.js | 1 + .../components/publish_dropdown_spec.js | 1 + .../components/submit_dropdown_spec.js | 1 + .../create_batch_comments_store.js | 1 + spec/frontend/boards/board_card_inner_spec.js | 1 + spec/frontend/boards/board_list_helper.js | 1 + .../board_add_new_column_form_spec.js | 1 + .../components/board_add_new_column_spec.js | 1 + .../board_add_new_column_trigger_spec.js | 1 + .../boards/components/board_app_spec.js | 1 + .../board_card_move_to_position_spec.js | 1 + .../boards/components/board_card_spec.js | 1 + .../components/board_content_sidebar_spec.js | 1 + .../boards/components/board_content_spec.js | 1 + .../components/board_filtered_search_spec.js | 1 + .../boards/components/board_form_spec.js | 1 + .../components/board_list_header_spec.js | 1 + .../boards/components/board_new_issue_spec.js | 1 + .../components/board_settings_sidebar_spec.js | 1 + .../boards/components/board_top_bar_spec.js | 1 + .../boards/components/boards_selector_spec.js | 1 + .../boards/components/config_toggle_spec.js | 1 + spec/frontend/boards/stores/actions_spec.js | 1 + .../forms/components/integration_form_spec.js | 1 + .../components/clusters_view_all_spec.js | 1 + .../components/install_agent_modal_spec.js | 114 ++- .../code_navigation/components/app_spec.js | 1 + .../components/deploy_freeze_modal_spec.js | 1 + .../components/deploy_freeze_settings_spec.js | 1 + .../components/deploy_freeze_table_spec.js | 1 + spec/frontend/diffs/components/app_spec.js | 1 + .../collapsed_files_warning_spec.js | 1 + .../diffs/components/diff_content_spec.js | 1 + .../components/diff_discussion_reply_spec.js | 1 + .../diffs/components/diff_file_header_spec.js | 1 + .../diffs/components/diff_file_spec.js | 1 + .../diffs/components/diff_row_spec.js | 1 + .../diffs/components/diff_view_spec.js | 1 + .../diffs/components/tree_list_spec.js | 1 + spec/frontend/diffs/create_diffs_store.js | 1 + .../components/error_details_spec.js | 1 + .../components/error_tracking_list_spec.js | 1 + .../components/app_spec.js | 1 + .../components/error_tracking_form_spec.js | 1 + .../components/project_dropdown_spec.js | 1 + .../components/edit_feature_flag_spec.js | 1 + .../components/feature_flags_spec.js | 1 + .../components/new_feature_flag_spec.js | 1 + .../strategies/gitlab_user_list_spec.js | 1 + .../feature_flags/components/strategy_spec.js | 1 + .../frequent_items/components/app_spec.js | 1 + .../frequent_items_list_item_spec.js | 1 + .../components/frequent_items_list_spec.js | 1 + .../frequent_items_search_input_spec.js | 1 + .../header_search/components/app_spec.js | 1 + .../header_search_autocomplete_items_spec.js | 1 + .../header_search_default_items_spec.js | 1 + .../header_search_scoped_items_spec.js | 1 + .../components/branches/search_list_spec.js | 1 + .../commit_sidebar/editor_header_spec.js | 1 + .../new_merge_request_option_spec.js | 1 + .../ide/components/error_message_spec.js | 1 + .../ide/components/file_row_extra_spec.js | 1 + .../file_templates/dropdown_spec.js | 1 + .../ide/components/ide_file_row_spec.js | 1 + .../ide/components/ide_review_spec.js | 1 + .../ide/components/ide_side_bar_spec.js | 1 + spec/frontend/ide/components/ide_spec.js | 1 + .../ide/components/ide_status_list_spec.js | 1 + spec/frontend/ide/components/ide_tree_spec.js | 1 + .../frontend/ide/components/jobs/list_spec.js | 1 + .../components/merge_requests/item_spec.js | 1 + .../components/merge_requests/list_spec.js | 1 + .../ide/components/new_dropdown/index_spec.js | 1 + .../panes/collapsible_sidebar_spec.js | 1 + .../ide/components/panes/right_spec.js | 1 + .../ide/components/pipelines/list_spec.js | 1 + .../ide/components/repo_editor_spec.js | 1 + spec/frontend/ide/components/repo_tab_spec.js | 1 + .../frontend/ide/components/repo_tabs_spec.js | 1 + .../ide/components/resizable_panel_spec.js | 1 + .../ide/components/terminal/session_spec.js | 1 + .../ide/components/terminal/terminal_spec.js | 1 + .../ide/components/terminal/view_spec.js | 1 + .../terminal_sync_status_safe_spec.js | 1 + .../terminal_sync_status_spec.js | 1 + .../ide/stores/modules/editor/setup_spec.js | 1 + .../ide/stores/plugins/terminal_spec.js | 1 + .../components/github_status_table_spec.js | 1 + .../components/import_projects_table_spec.js | 1 + .../provider_repo_table_row_spec.js | 1 + .../issues/show/components/app_spec.js | 70 +- .../show/components/header_actions_spec.js | 1 + .../show/components/issue_header_spec.js | 1 + .../sentry_error_stack_trace_spec.js | 1 + .../jobs/components/job/job_app_spec.js | 1 + spec/frontend/jobs/components/log/log_spec.js | 1 + .../lib/utils/vuex_module_mappers_spec.js | 1 + .../approve_access_request_button_spec.js | 1 + .../remove_group_link_button_spec.js | 1 + .../remove_member_button_spec.js | 1 + .../resend_invite_button_spec.js | 1 + .../remove_member_dropdown_item_spec.js | 1 + spec/frontend/members/components/app_spec.js | 1 + .../filter_sort/filter_sort_container_spec.js | 1 + .../members_filtered_search_bar_spec.js | 1 + .../filter_sort/sort_dropdown_spec.js | 1 + .../members/components/members_tabs_spec.js | 1 + .../components/modals/leave_modal_spec.js | 1 + .../modals/remove_group_link_modal_spec.js | 1 + .../modals/remove_member_modal_spec.js | 1 + .../table/expiration_datepicker_spec.js | 1 + .../table/members_table_cell_spec.js | 1 + .../components/table/members_table_spec.js | 1 + .../components/table/role_dropdown_spec.js | 1 + .../merge_conflict_resolver_app_spec.js | 1 + .../components/milestone_combobox_spec.js | 1 + .../notes/components/comment_form_spec.js | 1 + .../components/discussion_counter_spec.js | 1 + .../components/discussion_filter_spec.js | 1 + .../components/mr_discussion_filter_spec.js | 1 + .../components/multiline_comment_form_spec.js | 1 + .../notes/components/note_awards_list_spec.js | 1 + .../notes/components/note_body_spec.js | 1 + .../notes/components/note_header_spec.js | 1 + .../components/noteable_discussion_spec.js | 1 + .../notes/components/noteable_note_spec.js | 1 + .../notes/components/timeline_toggle_spec.js | 1 + .../mixins/discussion_navigation_spec.js | 1 + .../list_page/group_empty_state_spec.js | 1 + .../list_page/project_empty_state_spec.js | 1 + .../components/details/components/app_spec.js | 1 + .../details/components/details_title_spec.js | 1 + .../components/terraform_installation_spec.js | 1 + .../components/infrastructure_search_spec.js | 1 + .../list/components/packages_list_app_spec.js | 1 + .../list/components/packages_list_spec.js | 1 + .../shared/components/cli_commands_spec.js | 1 + spec/frontend/pipelines/pipelines_spec.js | 15 +- .../test_reports/test_reports_spec.js | 1 + .../test_reports/test_suite_table_spec.js | 1 + .../test_reports/test_summary_table_spec.js | 1 + .../components/branches_dropdown_spec.js | 1 + .../components/projects_dropdown_spec.js | 1 + .../commits/components/author_select_spec.js | 1 + .../ref/components/ref_selector_spec.js | 1 + .../releases/components/app_edit_new_spec.js | 1 + .../components/asset_links_form_spec.js | 1 + .../components/confirm_delete_modal_spec.js | 1 + .../components/tag_field_exsting_spec.js | 1 + .../components/blob_content_viewer_spec.js | 1 + .../search/sidebar/components/app_spec.js | 1 + .../components/archived_filter_spec.js | 1 + .../components/checkbox_filter_spec.js | 1 + .../components/confidentiality_filter_spec.js | 1 + .../search/sidebar/components/filters_spec.js | 1 + .../components/filters_template_spec.js | 1 + .../sidebar/components/issues_filters_spec.js | 1 + .../components/label_dropdown_items_spec.js | 1 + .../sidebar/components/label_filter_spec.js | 1 + .../components/language_filter_spec.js | 1 + .../sidebar/components/radio_filter_spec.js | 1 + .../scope_legacy_navigation_spec.js | 1 + .../scope_sidebar_navigation_spec.js | 1 + .../sidebar/components/status_filter_spec.js | 1 + .../search/sort/components/app_spec.js | 1 + .../search/topbar/components/app_spec.js | 1 + .../topbar/components/group_filter_spec.js | 1 + .../topbar/components/project_filter_spec.js | 1 + .../components/searchable_dropdown_spec.js | 1 + .../labels_select_vue/dropdown_button_spec.js | 1 + .../dropdown_contents_create_view_spec.js | 1 + .../dropdown_contents_labels_view_spec.js | 1 + .../dropdown_contents_spec.js | 1 + .../labels_select_vue/dropdown_title_spec.js | 1 + .../labels_select_vue/dropdown_value_spec.js | 1 + .../labels_select_root_spec.js | 1 + .../lock/issuable_lock_form_spec.js | 1 + .../global_search_autocomplete_items_spec.js | 1 + .../global_search_default_issuables_spec.js | 1 + .../global_search_default_items_spec.js | 1 + .../global_search_scoped_items_spec.js | 1 + .../components/global_search_spec.js | 1 + .../super_sidebar/components/user_bar_spec.js | 1 + .../components/edit_user_list_spec.js | 1 + .../components/new_user_list_spec.js | 1 + .../user_lists/components/user_list_spec.js | 1 + .../user_lists/components/user_lists_spec.js | 1 + .../components/artifacts_list_app_spec.js | 1 + .../diff_viewer/viewers/renamed_spec.js | 1 + .../components/gl_modal_vuex_spec.js | 1 + .../metric_images/metric_images_tab_spec.js | 1 + .../metric_images/metric_images_table_spec.js | 1 + .../metric_images/store/actions_spec.js | 1 + .../components/notes/placeholder_note_spec.js | 1 + .../frontend/whats_new/components/app_spec.js | 1 + .../ci/config/yaml/interpolator_spec.rb | 357 +++---- .../gitlab/ci/input/arguments/base_spec.rb | 19 - .../gitlab/ci/input/arguments/default_spec.rb | 53 - .../gitlab/ci/input/arguments/options_spec.rb | 54 - .../ci/input/arguments/required_spec.rb | 45 - .../gitlab/ci/input/arguments/unknown_spec.rb | 18 - spec/lib/gitlab/ci/input/inputs_spec.rb | 126 --- ...s_note_id_to_bigint_for_self_hosts_spec.rb | 125 +++ ...s_note_id_to_bigint_for_self_hosts_spec.rb | 133 +++ spec/models/label_spec.rb | 1 + .../project_authorizations/changes_spec.rb | 40 + spec/requests/api/labels_spec.rb | 12 + .../issues/import_csv_service_spec.rb | 10 + spec/services/members/create_service_spec.rb | 7 +- .../merge_requests/ff_merge_service_spec.rb | 1 + .../merge_requests/merge_service_spec.rb | 941 ++++++++++-------- .../from_source_branch_spec.rb | 87 ++ .../services/spam/spam_action_service_spec.rb | 14 - .../import_csv_service_shared_examples.rb | 12 + 634 files changed, 2527 insertions(+), 1707 deletions(-) create mode 100644 app/events/project_authorizations/authorizations_changed_event.rb create mode 100644 app/services/merge_requests/merge_strategies/from_source_branch.rb create mode 100644 app/services/merge_requests/merge_strategies/strategy_error.rb rename config/feature_flags/development/{ci_interpolation_inputs_refactor.yml => refactor_merge_service.yml} (66%) create mode 100644 db/post_migrate/20230810122746_ensure_snippet_user_mentions_bigint_backfill_is_finished_for_self_hosts.rb create mode 100644 db/post_migrate/20230810123044_swap_snippet_user_mentions_note_id_to_bigint_for_self_hosts.rb create mode 100644 db/post_migrate/20230811103654_ensure_vum_bigint_backfill_is_finished_for_self_hosts.rb create mode 100644 db/post_migrate/20230811103941_swap_vulnerability_user_mentions_note_id_to_bigint_for_self_hosts.rb create mode 100644 db/schema_migrations/20230810122746 create mode 100644 db/schema_migrations/20230810123044 create mode 100644 db/schema_migrations/20230811103654 create mode 100644 db/schema_migrations/20230811103941 delete mode 100644 doc/administration/geo/disaster_recovery/img/checksum-differences-admin-project-page.png delete mode 100644 doc/integration/jira/jira_cloud_configuration.md delete mode 100644 doc/topics/your_work.md delete mode 100644 doc/tutorials/agile_sprint.md delete mode 100644 doc/tutorials/convert_personal_namespace_into_group.md delete mode 100644 doc/tutorials/create_compliance_pipeline.md delete mode 100644 doc/tutorials/fuzz_testing_tutorial.md delete mode 100644 doc/tutorials/make_your_first_git_commit.md delete mode 100644 doc/tutorials/move_personal_project_to_a_group.md delete mode 100644 doc/tutorials/scan_result_policy.md delete mode 100644 doc/user/analytics/value_stream_analytics.md delete mode 100644 doc/user/application_security/secret_detection/post_processing.md delete mode 100644 doc/user/compliance/license_check_rules.md delete mode 100644 doc/user/packages/gradle_repository/index.md delete mode 100644 doc/user/project/code_owners.md delete mode 100644 lib/gitlab/ci/input/arguments/base.rb delete mode 100644 lib/gitlab/ci/input/arguments/default.rb delete mode 100644 lib/gitlab/ci/input/arguments/options.rb delete mode 100644 lib/gitlab/ci/input/arguments/required.rb delete mode 100644 lib/gitlab/ci/input/arguments/unknown.rb delete mode 100644 lib/gitlab/ci/input/inputs.rb create mode 100644 spec/controllers/admin/labels_controller_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/arguments/base_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/arguments/default_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/arguments/options_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/arguments/required_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/arguments/unknown_spec.rb delete mode 100644 spec/lib/gitlab/ci/input/inputs_spec.rb create mode 100644 spec/migrations/20230810123044_swap_snippet_user_mentions_note_id_to_bigint_for_self_hosts_spec.rb create mode 100644 spec/migrations/20230811103941_swap_vulnerability_user_mentions_note_id_to_bigint_for_self_hosts_spec.rb create mode 100644 spec/services/merge_requests/merge_strategies/from_source_branch_spec.rb diff --git a/.eslintrc.yml b/.eslintrc.yml index 527e94d4101..dfb9e8f97eb 100644 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -136,6 +136,8 @@ rules: - paths: - name: mousetrap message: 'Import { Mousetrap } from ~/lib/mousetrap instead.' + - name: vuex + message: 'See our documentation on "Migrating from VueX" for tips on how to avoid adding new VueX stores.' unicorn/prefer-dom-node-dataset: - error no-unsanitized/method: diff --git a/GITALY_SERVER_VERSION b/GITALY_SERVER_VERSION index d30600b1680..a7c98ef1e75 100644 --- a/GITALY_SERVER_VERSION +++ b/GITALY_SERVER_VERSION @@ -1 +1 @@ -aaff3df67c6323e54fc7c4349727b9523b1063b5 +5bdafbc7693c7dfacc1c0932cfa8d62004c7097b diff --git a/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_wrapper.vue b/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_wrapper.vue index a9fb692b299..c1ec46cfc50 100644 --- a/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_wrapper.vue +++ b/app/assets/javascripts/add_context_commits_modal/components/add_context_commits_modal_wrapper.vue @@ -1,5 +1,6 @@ diff --git a/app/assets/javascripts/issues/show/components/sentry_error_stack_trace.vue b/app/assets/javascripts/issues/show/components/sentry_error_stack_trace.vue index 1530e9a15b5..08cda8c3cdc 100644 --- a/app/assets/javascripts/issues/show/components/sentry_error_stack_trace.vue +++ b/app/assets/javascripts/issues/show/components/sentry_error_stack_trace.vue @@ -1,5 +1,6 @@