diff --git a/.rubocop.yml b/.rubocop.yml index 9413360e89e..89a9cbc3744 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -640,3 +640,7 @@ Cop/UserAdmin: - 'lib/gitlab/auth/current_user_mode.rb' - 'spec/**/*.rb' - 'ee/spec/**/*.rb' + +Performance/OpenStruct: + Exclude: + - 'ee/spec/**/*.rb' diff --git a/.rubocop_manual_todo.yml b/.rubocop_manual_todo.yml index 4678c7d92af..affe95ffb9f 100644 --- a/.rubocop_manual_todo.yml +++ b/.rubocop_manual_todo.yml @@ -568,6 +568,993 @@ Rails/TimeZone: - 'spec/tooling/rspec_flaky/listener_spec.rb' - 'spec/tooling/rspec_flaky/report_spec.rb' +# WIP: https://gitlab.com/gitlab-org/gitlab/-/issues/325836 +RSpec/EmptyLineAfterFinalLetItBe: + Exclude: + - ee/spec/controllers/admin/geo/projects_controller_spec.rb + - ee/spec/controllers/admin/projects_controller_spec.rb + - ee/spec/controllers/ee/projects/jobs_controller_spec.rb + - ee/spec/controllers/groups/analytics/cycle_analytics/stages_controller_spec.rb + - ee/spec/controllers/groups/analytics/cycle_analytics/summary_controller_spec.rb + - ee/spec/controllers/groups/analytics/cycle_analytics/value_streams_controller_spec.rb + - ee/spec/controllers/groups/analytics/tasks_by_type_controller_spec.rb + - ee/spec/controllers/groups/autocomplete_sources_controller_spec.rb + - ee/spec/controllers/groups/insights_controller_spec.rb + - ee/spec/controllers/groups/todos_controller_spec.rb + - ee/spec/controllers/projects/branches_controller_spec.rb + - ee/spec/controllers/projects/incident_management/oncall_schedules_controller_spec.rb + - ee/spec/controllers/projects/insights_controller_spec.rb + - ee/spec/controllers/projects/licenses_controller_spec.rb + - ee/spec/controllers/projects/merge_requests_controller_spec.rb + - ee/spec/controllers/projects/mirrors_controller_spec.rb + - ee/spec/controllers/projects/threat_monitoring_controller_spec.rb + - ee/spec/controllers/registrations/groups_controller_spec.rb + - ee/spec/controllers/registrations/projects_controller_spec.rb + - ee/spec/controllers/subscriptions_controller_spec.rb + - ee/spec/features/admin/admin_show_new_user_signups_cap_alert_spec.rb + - ee/spec/features/analytics/group_analytics_spec.rb + - ee/spec/features/boards/group_boards/multiple_boards_spec.rb + - ee/spec/features/ci_shared_runner_warnings_spec.rb + - ee/spec/features/dashboards/todos_spec.rb + - ee/spec/features/groups/groups_security_credentials_spec.rb + - ee/spec/features/groups/hooks/user_edits_hooks_spec.rb + - ee/spec/features/groups/iterations/user_edits_iteration_spec.rb + - ee/spec/features/groups/usage_quotas_spec.rb + - ee/spec/features/integrations/jira/jira_issues_list_spec.rb + - ee/spec/features/issues/bulk_assignment_epic_spec.rb + - ee/spec/features/issues/user_uses_quick_actions_spec.rb + - ee/spec/features/markdown/metrics_spec.rb + - ee/spec/features/projects/issues/user_creates_issue_spec.rb + - ee/spec/features/projects/iterations/iterations_list_spec.rb + - ee/spec/features/projects/licenses/maintainer_views_policies_spec.rb + - ee/spec/features/registrations/group_invites_during_signup_flow_spec.rb + - ee/spec/features/subscriptions_spec.rb + - ee/spec/finders/analytics/cycle_analytics/stage_finder_spec.rb + - ee/spec/finders/billed_users_finder_spec.rb + - ee/spec/finders/custom_project_templates_finder_spec.rb + - ee/spec/finders/deployments_finder_spec.rb + - ee/spec/finders/ee/projects_finder_spec.rb + - ee/spec/finders/epics_finder_spec.rb + - ee/spec/finders/geo_node_finder_spec.rb + - ee/spec/finders/incident_management/oncall_schedules_finder_spec.rb + - ee/spec/finders/issues_finder_spec.rb + - ee/spec/finders/iterations_finder_spec.rb + - ee/spec/finders/merge_trains_finder_spec.rb + - ee/spec/finders/projects/integrations/jira/issues_finder_spec.rb + - ee/spec/finders/scim_finder_spec.rb + - ee/spec/finders/security/pipeline_vulnerabilities_finder_spec.rb + - ee/spec/graphql/ee/mutations/concerns/mutations/resolves_issuable_spec.rb + - ee/spec/graphql/mutations/boards/update_epic_user_preferences_spec.rb + - ee/spec/graphql/mutations/clusters/agent_tokens/create_spec.rb + - ee/spec/graphql/mutations/compliance_management/frameworks/create_spec.rb + - ee/spec/graphql/mutations/compliance_management/frameworks/destroy_spec.rb + - ee/spec/graphql/mutations/compliance_management/frameworks/update_spec.rb + - ee/spec/graphql/mutations/dast_scanner_profiles/delete_spec.rb + - ee/spec/graphql/mutations/epics/add_issue_spec.rb + - ee/spec/graphql/mutations/gitlab_subscriptions/activate_spec.rb + - ee/spec/graphql/mutations/incident_management/oncall_rotation/create_spec.rb + - ee/spec/graphql/mutations/incident_management/oncall_rotation/destroy_spec.rb + - ee/spec/graphql/mutations/incident_management/oncall_schedule/create_spec.rb + - ee/spec/graphql/mutations/incident_management/oncall_schedule/destroy_spec.rb + - ee/spec/graphql/mutations/incident_management/oncall_schedule/update_spec.rb + - ee/spec/graphql/mutations/issues/set_epic_spec.rb + - ee/spec/graphql/mutations/requirements_management/export_requirements_spec.rb + - ee/spec/graphql/mutations/vulnerabilities/create_external_issue_link_spec.rb + - ee/spec/graphql/resolvers/ci/code_coverage_activities_resolver_spec.rb + - ee/spec/graphql/resolvers/epics_resolver_spec.rb + - ee/spec/graphql/resolvers/geo/geo_node_resolver_spec.rb + - ee/spec/graphql/resolvers/incident_management/oncall_shifts_resolver_spec.rb + - ee/spec/graphql/types/issue_type_spec.rb + - ee/spec/helpers/ee/graph_helper_spec.rb + - ee/spec/helpers/ee/issues_helper_spec.rb + - ee/spec/helpers/ee/projects/incidents_helper_spec.rb + - ee/spec/helpers/ee/projects/security/api_fuzzing_configuration_helper_spec.rb + - ee/spec/helpers/ee/projects/security/configuration_helper_spec.rb + - ee/spec/helpers/ee/projects/security/sast_configuration_helper_spec.rb + - ee/spec/helpers/ee/trial_helper_spec.rb + - ee/spec/helpers/ee/user_callouts_helper_spec.rb + - ee/spec/helpers/vulnerabilities_helper_spec.rb + - ee/spec/lib/ee/api/entities/user_with_admin_spec.rb + - ee/spec/lib/ee/api/entities/vulnerability_spec.rb + - ee/spec/lib/ee/event_filter_spec.rb + - ee/spec/lib/ee/gitlab/alert_management/payload/generic_spec.rb + - ee/spec/lib/ee/gitlab/alert_management/payload_spec.rb + - ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/external_spec.rb + - ee/spec/lib/ee/gitlab/ci/pipeline/quota/activity_spec.rb + - ee/spec/lib/ee/gitlab/ci/pipeline/quota/job_activity_spec.rb + - ee/spec/lib/ee/gitlab/ci/pipeline/quota/size_spec.rb + - ee/spec/lib/ee/gitlab/git_access_design_spec.rb + - ee/spec/lib/ee/gitlab/git_access_snippet_spec.rb + - ee/spec/lib/ee/gitlab/hook_data/issue_builder_spec.rb + - ee/spec/lib/ee/gitlab/import_export/project/tree_restorer_spec.rb + - ee/spec/lib/ee/gitlab/snippet_search_results_spec.rb + - ee/spec/lib/elastic/latest/git_class_proxy_spec.rb + - ee/spec/lib/gitlab/alert_management/payload/cilium_spec.rb + - ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_time_summary_spec.rb + - ee/spec/lib/gitlab/checks/diff_check_spec.rb + - ee/spec/lib/gitlab/code_owners/loader_spec.rb + - ee/spec/lib/gitlab/elastic/document_reference_spec.rb + - ee/spec/lib/gitlab/elastic/group_search_results_spec.rb + - ee/spec/lib/gitlab/elastic/project_search_results_spec.rb + - ee/spec/lib/gitlab/geo/geo_tasks_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/events/container_repository_updated_event_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/events/design_repository_updated_event_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/events/repositories_changed_event_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/events/repository_created_event_spec.rb + - ee/spec/lib/gitlab/geo/log_cursor/events/repository_updated_event_spec.rb + - ee/spec/lib/gitlab/geo/replication/base_transfer_spec.rb + - ee/spec/lib/gitlab/geo/replication/blob_downloader_spec.rb + - ee/spec/lib/gitlab/geo/replication/file_transfer_spec.rb + - ee/spec/lib/gitlab/git_access_spec.rb + - ee/spec/lib/gitlab/git_access_wiki_spec.rb + - ee/spec/lib/gitlab/graphql/aggregations/vulnerability_statistics/lazy_aggregate_spec.rb + - ee/spec/lib/gitlab/insights/project_insights_config_spec.rb + - ee/spec/lib/gitlab/sitemaps/url_extractor_spec.rb + - ee/spec/mailers/credentials_inventory_mailer_spec.rb + - ee/spec/mailers/ee/emails/profile_spec.rb + - ee/spec/mailers/notify_spec.rb + - ee/spec/migrations/backfill_version_author_and_created_at_spec.rb + - ee/spec/models/analytics/cycle_analytics/group_level_spec.rb + - ee/spec/models/burndown_spec.rb + - ee/spec/models/ci/build_spec.rb + - ee/spec/models/ci/daily_build_group_report_result_spec.rb + - ee/spec/models/ci/minutes/notification_spec.rb + - ee/spec/models/concerns/epic_tree_sorting_spec.rb + - ee/spec/models/dora/daily_metrics_spec.rb + - ee/spec/models/ee/ci/build_dependencies_spec.rb + - ee/spec/models/ee/iteration_spec.rb + - ee/spec/models/ee/namespace/root_storage_size_spec.rb + - ee/spec/models/ee/namespace_spec.rb + - ee/spec/models/ee/personal_access_token_spec.rb + - ee/spec/models/epic_spec.rb + - ee/spec/models/geo/lfs_object_registry_spec.rb + - ee/spec/models/gitlab_subscription_spec.rb + - ee/spec/models/group_member_spec.rb + - ee/spec/models/group_spec.rb + - ee/spec/models/instance_security_dashboard_spec.rb + - ee/spec/models/issue_spec.rb + - ee/spec/models/label_note_spec.rb + - ee/spec/models/merge_request_spec.rb + - ee/spec/models/project_spec.rb + - ee/spec/models/requirements_management/test_report_spec.rb + - ee/spec/models/vulnerabilities/finding_spec.rb + - ee/spec/policies/clusters/agent_token_policy_spec.rb + - ee/spec/policies/compliance_management/framework_policy_spec.rb + - ee/spec/policies/group_policy_spec.rb + - ee/spec/policies/merge_request_policy_spec.rb + - ee/spec/policies/project_policy_spec.rb + - ee/spec/policies/vulnerabilities/issue_link_policy_spec.rb + - ee/spec/presenters/approval_rule_presenter_spec.rb + - ee/spec/presenters/ci/pipeline_presenter_spec.rb + - ee/spec/requests/api/analytics/code_review_analytics_spec.rb + - ee/spec/requests/api/audit_events_spec.rb + - ee/spec/requests/api/commits_spec.rb + - ee/spec/requests/api/dora/metrics_spec.rb + - ee/spec/requests/api/epics_spec.rb + - ee/spec/requests/api/external_approval_rules_spec.rb + - ee/spec/requests/api/geo_spec.rb + - ee/spec/requests/api/graphql/boards/epic_board_list_epics_query_spec.rb + - ee/spec/requests/api/graphql/current_user/todos_query_spec.rb + - ee/spec/requests/api/graphql/group/epic/epic_issues_spec.rb + - ee/spec/requests/api/graphql/group/epics_spec.rb + - ee/spec/requests/api/graphql/mutations/analytics/devops_adoption/segments/create_spec.rb + - ee/spec/requests/api/graphql/mutations/analytics/devops_adoption/segments/delete_spec.rb + - ee/spec/requests/api/graphql/mutations/boards/create_spec.rb + - ee/spec/requests/api/graphql/mutations/boards/epic_boards/create_spec.rb + - ee/spec/requests/api/graphql/mutations/boards/epic_boards/update_spec.rb + - ee/spec/requests/api/graphql/mutations/boards/issues/issue_move_list_spec.rb + - ee/spec/requests/api/graphql/mutations/boards/lists/update_limit_metrics_spec.rb + - ee/spec/requests/api/graphql/mutations/compliance_management/frameworks/destroy_spec.rb + - ee/spec/requests/api/graphql/mutations/compliance_management/frameworks/update_spec.rb + - ee/spec/requests/api/graphql/mutations/dast_scanner_profiles/update_spec.rb + - ee/spec/requests/api/graphql/mutations/environments/canary_ingress/update_spec.rb + - ee/spec/requests/api/graphql/mutations/epics/add_issue_spec.rb + - ee/spec/requests/api/graphql/mutations/epics/set_subscription_spec.rb + - ee/spec/requests/api/graphql/mutations/epics/update_spec.rb + - ee/spec/requests/api/graphql/mutations/gitlab_subscriptions/activate_spec.rb + - ee/spec/requests/api/graphql/mutations/incident_management/oncall_rotation/create_spec.rb + - ee/spec/requests/api/graphql/mutations/incident_management/oncall_schedule/create_spec.rb + - ee/spec/requests/api/graphql/mutations/incident_management/oncall_schedule/destroy_spec.rb + - ee/spec/requests/api/graphql/mutations/incident_management/oncall_schedule/update_spec.rb + - ee/spec/requests/api/graphql/mutations/issues/promote_to_epic_spec.rb + - ee/spec/requests/api/graphql/mutations/issues/update_spec.rb + - ee/spec/requests/api/graphql/mutations/iterations/create_spec.rb + - ee/spec/requests/api/graphql/mutations/notes/create/note_spec.rb + - ee/spec/requests/api/graphql/mutations/quality_management/test_cases/create_spec.rb + - ee/spec/requests/api/graphql/namespace/compliance_frameworks_spec.rb + - ee/spec/requests/api/graphql/project/alert_management/payload_fields_spec.rb + - ee/spec/requests/api/graphql/project/requirements_management/requirements_spec.rb + - ee/spec/requests/api/graphql/projects/compliance_frameworks_spec.rb + - ee/spec/requests/api/groups_spec.rb + - ee/spec/requests/api/internal/base_spec.rb + - ee/spec/requests/api/issues_spec.rb + - ee/spec/requests/api/ldap_spec.rb + - ee/spec/requests/api/merge_request_approval_rules_spec.rb + - ee/spec/requests/api/merge_request_approvals_spec.rb + - ee/spec/requests/api/merge_requests_spec.rb + - ee/spec/requests/api/merge_trains_spec.rb + - ee/spec/requests/api/project_approval_rules_spec.rb + - ee/spec/requests/api/project_approval_settings_spec.rb + - ee/spec/requests/api/projects_spec.rb + - ee/spec/requests/api/todos_spec.rb + - ee/spec/requests/api/vulnerabilities_spec.rb + - ee/spec/requests/api/vulnerability_issue_links_spec.rb + - ee/spec/requests/api/wikis_spec.rb + - ee/spec/requests/callout_spec.rb + - ee/spec/requests/git_http_geo_spec.rb + - ee/spec/requests/projects/issues_controller_spec.rb + - ee/spec/requests/projects/on_demand_scans_controller_spec.rb + - ee/spec/requests/projects/security/scanned_resources_controller_spec.rb + - ee/spec/requests/repositories/git_http_controller_spec.rb + - ee/spec/serializers/clusters/environment_serializer_spec.rb + - ee/spec/serializers/dependency_entity_spec.rb + - ee/spec/serializers/dependency_list_serializer_spec.rb + - ee/spec/serializers/ee/issue_board_entity_spec.rb + - ee/spec/serializers/ee/issue_entity_spec.rb + - ee/spec/serializers/ee/issue_sidebar_extras_entity_spec.rb + - ee/spec/serializers/member_entity_spec.rb + - ee/spec/serializers/merge_request_poll_widget_entity_spec.rb + - ee/spec/serializers/merge_request_widget_entity_spec.rb + - ee/spec/serializers/status_page/incident_comment_entity_spec.rb + - ee/spec/serializers/vulnerabilities/feedback_entity_spec.rb + - ee/spec/services/alert_management/extract_alert_payload_fields_service_spec.rb + - ee/spec/services/alert_management/process_prometheus_alert_service_spec.rb + - ee/spec/services/analytics/cycle_analytics/stages/delete_service_spec.rb + - ee/spec/services/analytics/cycle_analytics/stages/list_service_spec.rb + - ee/spec/services/analytics/cycle_analytics/stages/update_service_spec.rb + - ee/spec/services/analytics/cycle_analytics/value_streams/create_service_spec.rb + - ee/spec/services/analytics/deployments/frequency/aggregate_service_spec.rb + - ee/spec/services/analytics/devops_adoption/segments/bulk_delete_service_spec.rb + - ee/spec/services/analytics/devops_adoption/segments/create_service_spec.rb + - ee/spec/services/analytics/devops_adoption/segments/delete_service_spec.rb + - ee/spec/services/analytics/devops_adoption/segments/find_or_create_service_spec.rb + - ee/spec/services/approval_rules/create_service_spec.rb + - ee/spec/services/audit_event_service_spec.rb + - ee/spec/services/auto_merge/add_to_merge_train_when_pipeline_succeeds_service_spec.rb + - ee/spec/services/auto_merge/merge_train_service_spec.rb + - ee/spec/services/award_emojis/add_service_spec.rb + - ee/spec/services/award_emojis/destroy_service_spec.rb + - ee/spec/services/billable_members/destroy_service_spec.rb + - ee/spec/services/boards/epic_boards/destroy_service_spec.rb + - ee/spec/services/ci/audit_variable_change_service_spec.rb + - ee/spec/services/ci/compare_license_scanning_reports_service_spec.rb + - ee/spec/services/ci/compare_metrics_reports_service_spec.rb + - ee/spec/services/ci/compare_security_reports_service_spec.rb + - ee/spec/services/ci/create_pipeline_service/needs_spec.rb + - ee/spec/services/ci/create_pipeline_service_spec.rb + - ee/spec/services/ci/external_pull_requests/process_github_event_service_spec.rb + - ee/spec/services/ci/pipeline_bridge_status_service_spec.rb + - ee/spec/services/ci/register_job_service_spec.rb + - ee/spec/services/clusters/agent_tokens/create_service_spec.rb + - ee/spec/services/compliance_management/frameworks/create_service_spec.rb + - ee/spec/services/compliance_management/frameworks/update_service_spec.rb + - ee/spec/services/dast_scanner_profiles/destroy_service_spec.rb + - ee/spec/services/dast_scanner_profiles/update_service_spec.rb + - ee/spec/services/dast_site_profiles/destroy_service_spec.rb + - ee/spec/services/dora/aggregate_metrics_service_spec.rb + - ee/spec/services/ee/audit_events/protected_branch_audit_event_service_spec.rb + - ee/spec/services/ee/ci/change_variable_service_spec.rb + - ee/spec/services/ee/ci/change_variables_service_spec.rb + - ee/spec/services/ee/design_management/delete_designs_service_spec.rb + - ee/spec/services/ee/git/branch_push_service_spec.rb + - ee/spec/services/ee/issuable/bulk_update_service_spec.rb + - ee/spec/services/ee/issues/create_service_spec.rb + - ee/spec/services/ee/issues/update_service_spec.rb + - ee/spec/services/ee/labels/create_service_spec.rb + - ee/spec/services/ee/merge_requests/base_service_spec.rb + - ee/spec/services/ee/notes/create_service_spec.rb + - ee/spec/services/ee/notification_service_spec.rb + - ee/spec/services/ee/resource_events/merge_into_notes_service_spec.rb + - ee/spec/services/ee/todos/destroy/entity_leave_service_spec.rb + - ee/spec/services/epics/create_service_spec.rb + - ee/spec/services/external_approval_rules/create_service_spec.rb + - ee/spec/services/external_approval_rules/destroy_service_spec.rb + - ee/spec/services/external_approval_rules/update_service_spec.rb + - ee/spec/services/geo/blob_download_service_spec.rb + - ee/spec/services/geo/design_repository_sync_service_spec.rb + - ee/spec/services/geo/event_service_spec.rb + - ee/spec/services/geo/file_registry_removal_service_spec.rb + - ee/spec/services/geo/project_housekeeping_service_spec.rb + - ee/spec/services/gitlab_subscriptions/activate_service_spec.rb + - ee/spec/services/gitlab_subscriptions/apply_trial_service_spec.rb + - ee/spec/services/groups/autocomplete_service_spec.rb + - ee/spec/services/ide/schemas_config_service_spec.rb + - ee/spec/services/incident_management/incidents/upload_metric_service_spec.rb + - ee/spec/services/incident_management/oncall_rotations/edit_service_spec.rb + - ee/spec/services/issues/build_service_spec.rb + - ee/spec/services/issues/export_csv_service_spec.rb + - ee/spec/services/merge_request_approval_settings/update_service_spec.rb + - ee/spec/services/merge_trains/check_status_service_spec.rb + - ee/spec/services/merge_trains/create_pipeline_service_spec.rb + - ee/spec/services/merge_trains/refresh_merge_request_service_spec.rb + - ee/spec/services/merge_trains/refresh_service_spec.rb + - ee/spec/services/personal_access_tokens/create_service_audit_log_spec.rb + - ee/spec/services/personal_access_tokens/groups/update_lifetime_service_spec.rb + - ee/spec/services/projects/after_rename_service_spec.rb + - ee/spec/services/projects/alerting/notify_service_spec.rb + - ee/spec/services/projects/destroy_service_spec.rb + - ee/spec/services/projects/gitlab_projects_import_service_spec.rb + - ee/spec/services/projects/import_export/export_service_spec.rb + - ee/spec/services/projects/transfer_service_spec.rb + - ee/spec/services/push_rules/create_or_update_service_spec.rb + - ee/spec/services/quality_management/test_cases/create_service_spec.rb + - ee/spec/services/quick_actions/interpret_service_spec.rb + - ee/spec/services/requirements_management/create_requirement_service_spec.rb + - ee/spec/services/requirements_management/export_csv_service_spec.rb + - ee/spec/services/requirements_management/update_requirement_service_spec.rb + - ee/spec/services/resource_access_tokens/create_service_spec.rb + - ee/spec/services/resource_access_tokens/revoke_service_spec.rb + - ee/spec/services/search/global_service_spec.rb + - ee/spec/services/search/group_service_spec.rb + - ee/spec/services/search/project_service_spec.rb + - ee/spec/services/security/auto_fix_label_service_spec.rb + - ee/spec/services/security/store_grouped_scans_service_spec.rb + - ee/spec/services/security/store_report_service_spec.rb + - ee/spec/services/status_page/publish_attachments_service_spec.rb + - ee/spec/services/status_page/publish_details_service_spec.rb + - ee/spec/services/status_page/publish_list_service_spec.rb + - ee/spec/services/status_page/publish_service_spec.rb + - ee/spec/services/status_page/trigger_publish_service_spec.rb + - ee/spec/services/status_page/unpublish_details_service_spec.rb + - ee/spec/services/timebox_report_service_spec.rb + - ee/spec/services/todo_service_spec.rb + - ee/spec/services/vulnerabilities/confirm_service_spec.rb + - ee/spec/services/vulnerabilities/create_service_spec.rb + - ee/spec/services/vulnerabilities/dismiss_service_spec.rb + - ee/spec/services/vulnerabilities/resolve_service_spec.rb + - ee/spec/services/vulnerabilities/revert_to_detected_service_spec.rb + - ee/spec/services/vulnerabilities/update_service_spec.rb + - ee/spec/services/vulnerability_exports/create_service_spec.rb + - ee/spec/services/vulnerability_external_issue_links/destroy_service_spec.rb + - ee/spec/services/vulnerability_issue_links/delete_service_spec.rb + - ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb + - ee/spec/support/shared_examples/graphql/mutations/set_multiple_assignees_shared_examples.rb + - ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb + - ee/spec/support/shared_examples/services/search_notes_shared_examples.rb + - ee/spec/tasks/gitlab/license_rake_spec.rb + - ee/spec/views/admin/application_settings/_elasticsearch_form.html.haml_spec.rb + - ee/spec/views/groups/_compliance_frameworks.html.haml_spec.rb + - ee/spec/views/groups/edit.html.haml_spec.rb + - ee/spec/views/projects/pipelines/_tabs_content.html.haml_spec.rb + - ee/spec/views/shared/billings/_eoa_bronze_plan_banner.html.haml_spec.rb + - ee/spec/views/shared/billings/_trial_status.html.haml_spec.rb + - ee/spec/workers/adjourned_projects_deletion_cron_worker_spec.rb + - ee/spec/workers/deployments/auto_rollback_worker_spec.rb + - ee/spec/workers/dora/daily_metrics/refresh_worker_spec.rb + - ee/spec/workers/ee/issuable_export_csv_worker_spec.rb + - ee/spec/workers/elastic_namespace_indexer_worker_spec.rb + - ee/spec/workers/geo/batch/project_registry_scheduler_worker_spec.rb + - ee/spec/workers/geo/prune_event_log_worker_spec.rb + - ee/spec/workers/geo/repository_verification/primary/single_worker_spec.rb + - ee/spec/workers/incident_management/oncall_rotations/persist_shifts_job_spec.rb + - ee/spec/workers/post_receive_spec.rb + - ee/spec/workers/requirements_management/import_requirements_csv_worker_spec.rb + - ee/spec/workers/security/auto_fix_worker_spec.rb + - ee/spec/workers/set_user_status_based_on_user_cap_setting_worker_spec.rb + - spec/controllers/confirmations_controller_spec.rb + - spec/controllers/dashboard/projects_controller_spec.rb + - spec/controllers/groups/dependency_proxy_auth_controller_spec.rb + - spec/controllers/groups/dependency_proxy_for_containers_controller_spec.rb + - spec/controllers/groups/registry/repositories_controller_spec.rb + - spec/controllers/groups/variables_controller_spec.rb + - spec/controllers/invites_controller_spec.rb + - spec/controllers/profiles/emails_controller_spec.rb + - spec/controllers/projects/alerting/notifications_controller_spec.rb + - spec/controllers/projects/design_management/designs/raw_images_controller_spec.rb + - spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb + - spec/controllers/projects/environments_controller_spec.rb + - spec/controllers/projects/feature_flags_controller_spec.rb + - spec/controllers/projects/incidents_controller_spec.rb + - spec/controllers/projects/issues_controller_spec.rb + - spec/controllers/projects/jobs_controller_spec.rb + - spec/controllers/projects/merge_requests_controller_spec.rb + - spec/controllers/projects/performance_monitoring/dashboards_controller_spec.rb + - spec/controllers/projects/pipelines_controller_spec.rb + - spec/controllers/projects/pipelines_settings_controller_spec.rb + - spec/controllers/projects/raw_controller_spec.rb + - spec/controllers/projects/releases/evidences_controller_spec.rb + - spec/controllers/projects/releases_controller_spec.rb + - spec/controllers/projects/settings/ci_cd_controller_spec.rb + - spec/controllers/projects/settings/operations_controller_spec.rb + - spec/controllers/projects/static_site_editor_controller_spec.rb + - spec/controllers/projects/todos_controller_spec.rb + - spec/controllers/projects_controller_spec.rb + - spec/controllers/users/terms_controller_spec.rb + - spec/features/boards/multiple_boards_spec.rb + - spec/features/boards/sidebar_assignee_spec.rb + - spec/features/boards/sidebar_due_date_spec.rb + - spec/features/boards/sidebar_labels_spec.rb + - spec/features/boards/sidebar_milestones_spec.rb + - spec/features/boards/sidebar_spec.rb + - spec/features/boards/sidebar_subscription_spec.rb + - spec/features/boards/sidebar_time_tracking_spec.rb + - spec/features/cycle_analytics_spec.rb + - spec/features/dashboard/datetime_on_tooltips_spec.rb + - spec/features/dashboard/merge_requests_spec.rb + - spec/features/error_tracking/user_filters_errors_by_status_spec.rb + - spec/features/error_tracking/user_searches_sentry_errors_spec.rb + - spec/features/error_tracking/user_sees_error_index_spec.rb + - spec/features/file_uploads/group_import_spec.rb + - spec/features/file_uploads/project_import_spec.rb + - spec/features/file_uploads/user_avatar_spec.rb + - spec/features/groups/members/master_adds_member_with_expiration_date_spec.rb + - spec/features/groups_spec.rb + - spec/features/issues/user_sees_breadcrumb_links_spec.rb + - spec/features/markdown/metrics_spec.rb + - spec/features/merge_request/user_creates_merge_request_spec.rb + - spec/features/merge_request/user_posts_notes_spec.rb + - spec/features/operations_sidebar_link_spec.rb + - spec/features/participants_autocomplete_spec.rb + - spec/features/projects/badges/pipeline_badge_spec.rb + - spec/features/projects/branches/user_deletes_branch_spec.rb + - spec/features/projects/commit/cherry_pick_spec.rb + - spec/features/projects/commit/user_comments_on_commit_spec.rb + - spec/features/projects/commit/user_reverts_commit_spec.rb + - spec/features/projects/commit/user_views_user_status_on_commit_spec.rb + - spec/features/projects/confluence/user_views_confluence_page_spec.rb + - spec/features/projects/files/gitlab_ci_syntax_yml_dropdown_spec.rb + - spec/features/projects/issues/design_management/user_views_design_images_spec.rb + - spec/features/projects/labels/user_sees_links_to_issuables_spec.rb + - spec/features/projects/labels/user_views_labels_spec.rb + - spec/features/projects/members/master_adds_member_with_expiration_date_spec.rb + - spec/features/projects/merge_request_button_spec.rb + - spec/features/projects/pages/user_adds_domain_spec.rb + - spec/features/projects/pipelines/pipeline_spec.rb + - spec/features/projects/product_analytics/events_spec.rb + - spec/features/projects/settings/project_settings_spec.rb + - spec/features/projects/settings/repository_settings_spec.rb + - spec/features/projects/snippets/user_views_snippets_spec.rb + - spec/features/projects/user_sees_user_popover_spec.rb + - spec/features/snippets/embedded_snippet_spec.rb + - spec/finders/alert_management/alerts_finder_spec.rb + - spec/finders/ci/commit_statuses_finder_spec.rb + - spec/finders/container_repositories_finder_spec.rb + - spec/finders/deployments_finder_spec.rb + - spec/finders/design_management/designs_finder_spec.rb + - spec/finders/design_management/versions_finder_spec.rb + - spec/finders/events_finder_spec.rb + - spec/finders/group_descendants_finder_spec.rb + - spec/finders/groups_finder_spec.rb + - spec/finders/metrics/dashboards/annotations_finder_spec.rb + - spec/finders/metrics/users_starred_dashboards_finder_spec.rb + - spec/finders/packages/conan/package_file_finder_spec.rb + - spec/finders/packages/go/module_finder_spec.rb + - spec/finders/packages/group_packages_finder_spec.rb + - spec/finders/packages/nuget/package_finder_spec.rb + - spec/finders/packages/package_file_finder_spec.rb + - spec/finders/packages/package_finder_spec.rb + - spec/finders/template_finder_spec.rb + - spec/finders/todos_finder_spec.rb + - spec/finders/user_recent_events_finder_spec.rb + - spec/frontend/fixtures/pipelines.rb + - spec/graphql/features/authorization_spec.rb + - spec/graphql/gitlab_schema_spec.rb + - spec/graphql/mutations/alert_management/alerts/todo/create_spec.rb + - spec/graphql/mutations/alert_management/create_alert_issue_spec.rb + - spec/graphql/mutations/alert_management/http_integration/create_spec.rb + - spec/graphql/mutations/alert_management/http_integration/destroy_spec.rb + - spec/graphql/mutations/alert_management/http_integration/reset_token_spec.rb + - spec/graphql/mutations/alert_management/http_integration/update_spec.rb + - spec/graphql/mutations/alert_management/prometheus_integration/create_spec.rb + - spec/graphql/mutations/alert_management/prometheus_integration/reset_token_spec.rb + - spec/graphql/mutations/alert_management/prometheus_integration/update_spec.rb + - spec/graphql/mutations/alert_management/update_alert_status_spec.rb + - spec/graphql/mutations/boards/lists/update_spec.rb + - spec/graphql/mutations/custom_emoji/create_spec.rb + - spec/graphql/mutations/discussions/toggle_resolve_spec.rb + - spec/graphql/mutations/environments/canary_ingress/update_spec.rb + - spec/graphql/mutations/issues/set_severity_spec.rb + - spec/graphql/mutations/labels/create_spec.rb + - spec/graphql/mutations/notes/reposition_image_diff_note_spec.rb + - spec/graphql/resolvers/admin/analytics/usage_trends/measurements_resolver_spec.rb + - spec/graphql/resolvers/alert_management/alert_status_counts_resolver_spec.rb + - spec/graphql/resolvers/branch_commit_resolver_spec.rb + - spec/graphql/resolvers/design_management/designs_resolver_spec.rb + - spec/graphql/resolvers/design_management/version/designs_at_version_resolver_spec.rb + - spec/graphql/resolvers/group_milestones_resolver_spec.rb + - spec/graphql/resolvers/merge_request_pipelines_resolver_spec.rb + - spec/graphql/resolvers/metrics/dashboards/annotation_resolver_spec.rb + - spec/graphql/resolvers/project_pipeline_resolver_spec.rb + - spec/graphql/resolvers/project_pipelines_resolver_spec.rb + - spec/graphql/resolvers/timelog_resolver_spec.rb + - spec/graphql/types/admin/analytics/usage_trends/measurement_type_spec.rb + - spec/graphql/types/global_id_type_spec.rb + - spec/graphql/types/snippet_type_spec.rb + - spec/helpers/blob_helper_spec.rb + - spec/helpers/broadcast_messages_helper_spec.rb + - spec/helpers/ci/runners_helper_spec.rb + - spec/helpers/invite_members_helper_spec.rb + - spec/helpers/jira_connect_helper_spec.rb + - spec/helpers/labels_helper_spec.rb + - spec/helpers/markup_helper_spec.rb + - spec/helpers/notes_helper_spec.rb + - spec/helpers/projects/alert_management_helper_spec.rb + - spec/helpers/projects/issues/service_desk_helper_spec.rb + - spec/helpers/projects/project_members_helper_spec.rb + - spec/helpers/projects/terraform_helper_spec.rb + - spec/helpers/projects_helper_spec.rb + - spec/helpers/search_helper_spec.rb + - spec/lib/api/entities/design_management/design_spec.rb + - spec/lib/api/entities/merge_request_changes_spec.rb + - spec/lib/api/entities/release_spec.rb + - spec/lib/api/helpers/caching_spec.rb + - spec/lib/api/helpers/packages_manager_clients_helpers_spec.rb + - spec/lib/banzai/filter/external_issue_reference_filter_spec.rb + - spec/lib/banzai/filter/inline_metrics_redactor_filter_spec.rb + - spec/lib/banzai/filter/upload_link_filter_spec.rb + - spec/lib/banzai/pipeline/gfm_pipeline_spec.rb + - spec/lib/bulk_imports/groups/loaders/group_loader_spec.rb + - spec/lib/extracts_path_spec.rb + - spec/lib/extracts_ref_spec.rb + - spec/lib/gitlab/alert_management/alert_status_counts_spec.rb + - spec/lib/gitlab/alert_management/payload/base_spec.rb + - spec/lib/gitlab/alert_management/payload/generic_spec.rb + - spec/lib/gitlab/alert_management/payload/managed_prometheus_spec.rb + - spec/lib/gitlab/alert_management/payload/prometheus_spec.rb + - spec/lib/gitlab/alert_management/payload_spec.rb + - spec/lib/gitlab/analytics/cycle_analytics/base_query_builder_spec.rb + - spec/lib/gitlab/analytics/cycle_analytics/median_spec.rb + - spec/lib/gitlab/analytics/cycle_analytics/records_fetcher_spec.rb + - spec/lib/gitlab/auth/otp/strategies/devise_spec.rb + - spec/lib/gitlab/auth/otp/strategies/forti_authenticator_spec.rb + - spec/lib/gitlab/auth/otp/strategies/forti_token_cloud_spec.rb + - spec/lib/gitlab/auth_spec.rb + - spec/lib/gitlab/cache/ci/project_pipeline_status_spec.rb + - spec/lib/gitlab/checks/project_created_spec.rb + - spec/lib/gitlab/checks/project_moved_spec.rb + - spec/lib/gitlab/ci/build/policy/changes_spec.rb + - spec/lib/gitlab/ci/config/external/file/local_spec.rb + - spec/lib/gitlab/ci/config/external/file/project_spec.rb + - spec/lib/gitlab/ci/config/external/file/template_spec.rb + - spec/lib/gitlab/ci/config/external/mapper_spec.rb + - spec/lib/gitlab/ci/config/external/processor_spec.rb + - spec/lib/gitlab/ci/pipeline/chain/build_spec.rb + - spec/lib/gitlab/ci/pipeline/chain/cancel_pending_pipelines_spec.rb + - spec/lib/gitlab/ci/pipeline/chain/template_usage_spec.rb + - spec/lib/gitlab/ci/pipeline/chain/validate/external_spec.rb + - spec/lib/gitlab/ci/pipeline/chain/validate/repository_spec.rb + - spec/lib/gitlab/ci/pipeline/seed/build_spec.rb + - spec/lib/gitlab/ci/pipeline/seed/deployment_spec.rb + - spec/lib/gitlab/ci/pipeline/seed/environment_spec.rb + - spec/lib/gitlab/ci/pipeline/seed/processable/resource_group_spec.rb + - spec/lib/gitlab/ci/reports/test_failure_history_spec.rb + - spec/lib/gitlab/ci/syntax_templates_spec.rb + - spec/lib/gitlab/ci/trace/chunked_io_spec.rb + - spec/lib/gitlab/ci/trace_spec.rb + - spec/lib/gitlab/closing_issue_extractor_spec.rb + - spec/lib/gitlab/composer/cache_spec.rb + - spec/lib/gitlab/data_builder/wiki_page_spec.rb + - spec/lib/gitlab/database/partitioning_migration_helpers/foreign_key_helpers_spec.rb + - spec/lib/gitlab/database/partitioning_migration_helpers/table_management_helpers_spec.rb + - spec/lib/gitlab/deploy_key_access_spec.rb + - spec/lib/gitlab/email/handler/service_desk_handler_spec.rb + - spec/lib/gitlab/git/lfs_changes_spec.rb + - spec/lib/gitlab/git/merge_base_spec.rb + - spec/lib/gitlab/git/push_spec.rb + - spec/lib/gitlab/git_access_design_spec.rb + - spec/lib/gitlab/git_access_project_spec.rb + - spec/lib/gitlab/git_access_wiki_spec.rb + - spec/lib/gitlab/gitaly_client/operation_service_spec.rb + - spec/lib/gitlab/github_import/importer/pull_request_merged_by_importer_spec.rb + - spec/lib/gitlab/github_import/importer/pull_request_review_importer_spec.rb + - spec/lib/gitlab/github_import/milestone_finder_spec.rb + - spec/lib/gitlab/gl_repository/repo_type_spec.rb + - spec/lib/gitlab/graphql/batch_key_spec.rb + - spec/lib/gitlab/graphql/docs/renderer_spec.rb + - spec/lib/gitlab/graphql/loaders/batch_lfs_oid_loader_spec.rb + - spec/lib/gitlab/graphql/markdown_field_spec.rb + - spec/lib/gitlab/graphql/pagination/keyset/connection_spec.rb + - spec/lib/gitlab/graphql/pagination/keyset/last_items_spec.rb + - spec/lib/gitlab/group_search_results_spec.rb + - spec/lib/gitlab/hook_data/issue_builder_spec.rb + - spec/lib/gitlab/hook_data/merge_request_builder_spec.rb + - spec/lib/gitlab/hook_data/release_builder_spec.rb + - spec/lib/gitlab/import_export/design_repo_saver_spec.rb + - spec/lib/gitlab/import_export/fast_hash_serializer_spec.rb + - spec/lib/gitlab/import_export/project/export_task_spec.rb + - spec/lib/gitlab/import_export/project/tree_saver_spec.rb + - spec/lib/gitlab/import_export/repo_saver_spec.rb + - spec/lib/gitlab/import_export/snippet_repo_saver_spec.rb + - spec/lib/gitlab/import_export/snippets_repo_saver_spec.rb + - spec/lib/gitlab/import_export/wiki_repo_saver_spec.rb + - spec/lib/gitlab/jira_import/base_importer_spec.rb + - spec/lib/gitlab/jira_import/handle_labels_service_spec.rb + - spec/lib/gitlab/jira_import_spec.rb + - spec/lib/gitlab/json_cache_spec.rb + - spec/lib/gitlab/language_detection_spec.rb + - spec/lib/gitlab/phabricator_import/cache/map_spec.rb + - spec/lib/gitlab/phabricator_import/issues/task_importer_spec.rb + - spec/lib/gitlab/project_search_results_spec.rb + - spec/lib/gitlab/prometheus/query_variables_spec.rb + - spec/lib/gitlab/reactive_cache_set_cache_spec.rb + - spec/lib/gitlab/reference_extractor_spec.rb + - spec/lib/gitlab/repository_cache_spec.rb + - spec/lib/gitlab/repository_hash_cache_spec.rb + - spec/lib/gitlab/repository_set_cache_spec.rb + - spec/lib/gitlab/repository_size_checker_spec.rb + - spec/lib/gitlab/repository_size_error_message_spec.rb + - spec/lib/gitlab/search_results_spec.rb + - spec/lib/gitlab/shell_spec.rb + - spec/lib/gitlab/slash_commands/presenters/issue_comment_spec.rb + - spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb + - spec/lib/gitlab/snippet_search_results_spec.rb + - spec/lib/gitlab/sourcegraph_spec.rb + - spec/lib/gitlab/template/finders/repo_template_finders_spec.rb + - spec/lib/gitlab/tree_summary_spec.rb + - spec/lib/gitlab/url_builder_spec.rb + - spec/lib/gitlab/usage/metrics/aggregates/sources/postgres_hll_spec.rb + - spec/lib/gitlab/utils/usage_data_spec.rb + - spec/lib/gitlab/workhorse_spec.rb + - spec/mailers/emails/projects_spec.rb + - spec/mailers/emails/releases_spec.rb + - spec/mailers/emails/service_desk_spec.rb + - spec/models/abuse_report_spec.rb + - spec/models/alert_management/alert_spec.rb + - spec/models/audit_event_spec.rb + - spec/models/blob_viewer/gitlab_ci_yml_spec.rb + - spec/models/blob_viewer/metrics_dashboard_yml_spec.rb + - spec/models/chat_name_spec.rb + - spec/models/chat_team_spec.rb + - spec/models/ci/artifact_blob_spec.rb + - spec/models/ci/build_spec.rb + - spec/models/ci/build_trace_chunk_spec.rb + - spec/models/ci/daily_build_group_report_result_spec.rb + - spec/models/ci/pipeline_spec.rb + - spec/models/ci/runner_spec.rb + - spec/models/ci/stage_spec.rb + - spec/models/clusters/kubernetes_namespace_spec.rb + - spec/models/commit_spec.rb + - spec/models/concerns/batch_destroy_dependent_associations_spec.rb + - spec/models/concerns/featurable_spec.rb + - spec/models/deploy_token_spec.rb + - spec/models/deployment_spec.rb + - spec/models/diff_viewer/server_side_spec.rb + - spec/models/environment_spec.rb + - spec/models/event_collection_spec.rb + - spec/models/label_note_spec.rb + - spec/models/lfs_file_lock_spec.rb + - spec/models/member_spec.rb + - spec/models/merge_request_diff_spec.rb + - spec/models/namespace/root_storage_statistics_spec.rb + - spec/models/note_spec.rb + - spec/models/notification_setting_spec.rb + - spec/models/operations/feature_flag_spec.rb + - spec/models/packages/dependency_spec.rb + - spec/models/packages/go/module_version_spec.rb + - spec/models/packages/package_spec.rb + - spec/models/packages/tag_spec.rb + - spec/models/plan_limits_spec.rb + - spec/models/project_services/chat_message/alert_message_spec.rb + - spec/models/project_services/jira_service_spec.rb + - spec/models/project_services/prometheus_service_spec.rb + - spec/models/project_services/slack_service_spec.rb + - spec/models/project_spec.rb + - spec/models/prometheus_alert_spec.rb + - spec/models/protected_branch/push_access_level_spec.rb + - spec/models/release_spec.rb + - spec/models/releases/evidence_spec.rb + - spec/models/releases/source_spec.rb + - spec/models/repository_spec.rb + - spec/models/service_spec.rb + - spec/models/snippet_repository_spec.rb + - spec/models/snippet_spec.rb + - spec/models/terraform/state_spec.rb + - spec/models/u2f_registration_spec.rb + - spec/models/user_spec.rb + - spec/models/wiki_page/meta_spec.rb + - spec/models/wiki_page_spec.rb + - spec/policies/application_setting/term_policy_spec.rb + - spec/policies/ci/build_policy_spec.rb + - spec/policies/design_management/design_policy_spec.rb + - spec/policies/group_deploy_keys_group_policy_spec.rb + - spec/policies/group_policy_spec.rb + - spec/policies/project_snippet_policy_spec.rb + - spec/policies/service_policy_spec.rb + - spec/presenters/alert_management/alert_presenter_spec.rb + - spec/presenters/ci/pipeline_presenter_spec.rb + - spec/presenters/label_presenter_spec.rb + - spec/presenters/packages/composer/packages_presenter_spec.rb + - spec/presenters/packages/conan/package_presenter_spec.rb + - spec/presenters/packages/detail/package_presenter_spec.rb + - spec/presenters/packages/npm/package_presenter_spec.rb + - spec/presenters/packages/nuget/search_results_presenter_spec.rb + - spec/presenters/project_presenter_spec.rb + - spec/presenters/prometheus_alert_presenter_spec.rb + - spec/presenters/release_presenter_spec.rb + - spec/presenters/user_presenter_spec.rb + - spec/requests/api/api_spec.rb + - spec/requests/api/award_emoji_spec.rb + - spec/requests/api/branches_spec.rb + - spec/requests/api/ci/pipelines_spec.rb + - spec/requests/api/composer_packages_spec.rb + - spec/requests/api/deploy_tokens_spec.rb + - spec/requests/api/deployments_spec.rb + - spec/requests/api/error_tracking_spec.rb + - spec/requests/api/feature_flags_spec.rb + - spec/requests/api/freeze_periods_spec.rb + - spec/requests/api/generic_packages_spec.rb + - spec/requests/api/graphql/boards/board_lists_query_spec.rb + - spec/requests/api/graphql/ci/pipelines_spec.rb + - spec/requests/api/graphql/current_user_todos_spec.rb + - spec/requests/api/graphql/group/timelogs_spec.rb + - spec/requests/api/graphql/issue_status_counts_spec.rb + - spec/requests/api/graphql/metrics/dashboard_query_spec.rb + - spec/requests/api/graphql/mutations/admin/sidekiq_queues/delete_jobs_spec.rb + - spec/requests/api/graphql/mutations/alert_management/alerts/set_assignees_spec.rb + - spec/requests/api/graphql/mutations/alert_management/alerts/todo/create_spec.rb + - spec/requests/api/graphql/mutations/alert_management/alerts/update_alert_status_spec.rb + - spec/requests/api/graphql/mutations/alert_management/http_integration/create_spec.rb + - spec/requests/api/graphql/mutations/alert_management/prometheus_integration/create_spec.rb + - spec/requests/api/graphql/mutations/award_emojis/add_spec.rb + - spec/requests/api/graphql/mutations/award_emojis/toggle_spec.rb + - spec/requests/api/graphql/mutations/boards/create_spec.rb + - spec/requests/api/graphql/mutations/boards/destroy_spec.rb + - spec/requests/api/graphql/mutations/boards/lists/destroy_spec.rb + - spec/requests/api/graphql/mutations/boards/lists/update_spec.rb + - spec/requests/api/graphql/mutations/branches/create_spec.rb + - spec/requests/api/graphql/mutations/ci/ci_cd_settings_update_spec.rb + - spec/requests/api/graphql/mutations/commits/create_spec.rb + - spec/requests/api/graphql/mutations/container_expiration_policy/update_spec.rb + - spec/requests/api/graphql/mutations/discussions/toggle_resolve_spec.rb + - spec/requests/api/graphql/mutations/environments/canary_ingress/update_spec.rb + - spec/requests/api/graphql/mutations/issues/set_locked_spec.rb + - spec/requests/api/graphql/mutations/issues/set_severity_spec.rb + - spec/requests/api/graphql/mutations/issues/update_spec.rb + - spec/requests/api/graphql/mutations/jira_import/import_users_spec.rb + - spec/requests/api/graphql/mutations/jira_import/start_spec.rb + - spec/requests/api/graphql/mutations/labels/create_spec.rb + - spec/requests/api/graphql/mutations/merge_requests/accept_spec.rb + - spec/requests/api/graphql/mutations/merge_requests/create_spec.rb + - spec/requests/api/graphql/mutations/metrics/dashboard/annotations/create_spec.rb + - spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb + - spec/requests/api/graphql/mutations/notes/create/diff_note_spec.rb + - spec/requests/api/graphql/mutations/notes/create/image_diff_note_spec.rb + - spec/requests/api/graphql/mutations/notes/create/note_spec.rb + - spec/requests/api/graphql/mutations/notes/reposition_image_diff_note_spec.rb + - spec/requests/api/graphql/mutations/notes/update/image_diff_note_spec.rb + - spec/requests/api/graphql/mutations/snippets/mark_as_spam_spec.rb + - spec/requests/api/graphql/mutations/snippets/update_spec.rb + - spec/requests/api/graphql/mutations/user_callouts/create_spec.rb + - spec/requests/api/graphql/namespace/package_settings_spec.rb + - spec/requests/api/graphql/project/alert_management/alert/issue_spec.rb + - spec/requests/api/graphql/project/alert_management/alert_status_counts_spec.rb + - spec/requests/api/graphql/project/error_tracking/sentry_detailed_error_request_spec.rb + - spec/requests/api/graphql/project/error_tracking/sentry_errors_request_spec.rb + - spec/requests/api/graphql/project/issue/designs/designs_spec.rb + - spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb + - spec/requests/api/graphql/project_query_spec.rb + - spec/requests/api/graphql/query_spec.rb + - spec/requests/api/graphql/user/starred_projects_query_spec.rb + - spec/requests/api/graphql/user_query_spec.rb + - spec/requests/api/graphql_spec.rb + - spec/requests/api/group_import_spec.rb + - spec/requests/api/group_milestones_spec.rb + - spec/requests/api/group_packages_spec.rb + - spec/requests/api/groups_spec.rb + - spec/requests/api/helpers_spec.rb + - spec/requests/api/import_bitbucket_server_spec.rb + - spec/requests/api/internal/base_spec.rb + - spec/requests/api/lint_spec.rb + - spec/requests/api/markdown_spec.rb + - spec/requests/api/merge_requests_spec.rb + - spec/requests/api/metrics/dashboard/annotations_spec.rb + - spec/requests/api/metrics/user_starred_dashboards_spec.rb + - spec/requests/api/nuget_project_packages_spec.rb + - spec/requests/api/project_clusters_spec.rb + - spec/requests/api/project_container_repositories_spec.rb + - spec/requests/api/project_milestones_spec.rb + - spec/requests/api/project_packages_spec.rb + - spec/requests/api/pypi_packages_spec.rb + - spec/requests/api/rubygem_packages_spec.rb + - spec/requests/api/unleash_spec.rb + - spec/requests/api/users_spec.rb + - spec/requests/groups/email_campaigns_controller_spec.rb + - spec/requests/import/gitlab_groups_controller_spec.rb + - spec/requests/jwt_controller_spec.rb + - spec/requests/lfs_http_spec.rb + - spec/requests/product_analytics/collector_app_spec.rb + - spec/requests/rack_attack_global_spec.rb + - spec/serializers/admin/user_entity_spec.rb + - spec/serializers/ci/lint/result_serializer_spec.rb + - spec/serializers/ci/pipeline_entity_spec.rb + - spec/serializers/container_repository_entity_spec.rb + - spec/serializers/container_tag_entity_spec.rb + - spec/serializers/deployment_serializer_spec.rb + - spec/serializers/diff_file_entity_spec.rb + - spec/serializers/evidences/evidence_entity_spec.rb + - spec/serializers/fork_namespace_entity_spec.rb + - spec/serializers/group_link/group_group_link_entity_spec.rb + - spec/serializers/group_link/project_group_link_entity_spec.rb + - spec/serializers/issue_board_entity_spec.rb + - spec/serializers/member_entity_spec.rb + - spec/serializers/member_user_entity_spec.rb + - spec/serializers/merge_request_diff_entity_spec.rb + - spec/serializers/merge_request_poll_cached_widget_entity_spec.rb + - spec/serializers/merge_request_user_entity_spec.rb + - spec/serializers/namespace_basic_entity_spec.rb + - spec/serializers/pipeline_details_entity_spec.rb + - spec/serializers/project_import_entity_spec.rb + - spec/serializers/project_serializer_spec.rb + - spec/serializers/review_app_setup_entity_spec.rb + - spec/services/admin/propagate_service_template_spec.rb + - spec/services/alert_management/create_alert_issue_service_spec.rb + - spec/services/audit_event_service_spec.rb + - spec/services/auth/dependency_proxy_authentication_service_spec.rb + - spec/services/auto_merge_service_spec.rb + - spec/services/award_emojis/add_service_spec.rb + - spec/services/award_emojis/destroy_service_spec.rb + - spec/services/award_emojis/toggle_service_spec.rb + - spec/services/boards/destroy_service_spec.rb + - spec/services/boards/issues/move_service_spec.rb + - spec/services/bulk_create_integration_service_spec.rb + - spec/services/ci/change_variable_service_spec.rb + - spec/services/ci/change_variables_service_spec.rb + - spec/services/ci/create_pipeline_service/cross_project_pipeline_spec.rb + - spec/services/ci/create_pipeline_service/custom_config_content_spec.rb + - spec/services/ci/create_pipeline_service/dry_run_spec.rb + - spec/services/ci/create_pipeline_service/environment_spec.rb + - spec/services/ci/create_pipeline_service/parameter_content_spec.rb + - spec/services/ci/create_pipeline_service/parent_child_pipeline_spec.rb + - spec/services/ci/create_pipeline_service_spec.rb + - spec/services/ci/create_web_ide_terminal_service_spec.rb + - spec/services/ci/expire_pipeline_cache_service_spec.rb + - spec/services/ci/external_pull_requests/create_pipeline_service_spec.rb + - spec/services/ci/find_exposed_artifacts_service_spec.rb + - spec/services/ci/job_artifacts/create_service_spec.rb + - spec/services/ci/parse_dotenv_artifact_service_spec.rb + - spec/services/ci/pipeline_bridge_status_service_spec.rb + - spec/services/ci/pipeline_trigger_service_spec.rb + - spec/services/ci/prometheus_metrics/observe_histograms_service_spec.rb + - spec/services/ci/register_job_service_spec.rb + - spec/services/ci/resource_groups/assign_resource_from_resource_group_service_spec.rb + - spec/services/ci/retry_build_service_spec.rb + - spec/services/ci/stop_environments_service_spec.rb + - spec/services/clusters/applications/prometheus_health_check_service_spec.rb + - spec/services/container_expiration_policy_service_spec.rb + - spec/services/dependency_proxy/find_or_create_manifest_service_spec.rb + - spec/services/design_management/copy_design_collection/copy_service_spec.rb + - spec/services/design_management/delete_designs_service_spec.rb + - spec/services/design_management/save_designs_service_spec.rb + - spec/services/discussions/resolve_service_spec.rb + - spec/services/discussions/unresolve_service_spec.rb + - spec/services/environments/auto_stop_service_spec.rb + - spec/services/environments/canary_ingress/update_service_spec.rb + - spec/services/environments/reset_auto_stop_service_spec.rb + - spec/services/feature_flags/create_service_spec.rb + - spec/services/feature_flags/destroy_service_spec.rb + - spec/services/feature_flags/disable_service_spec.rb + - spec/services/feature_flags/enable_service_spec.rb + - spec/services/feature_flags/update_service_spec.rb + - spec/services/git/branch_push_service_spec.rb + - spec/services/groups/auto_devops_service_spec.rb + - spec/services/groups/group_links/update_service_spec.rb + - spec/services/groups/transfer_service_spec.rb + - spec/services/groups/update_shared_runners_service_spec.rb + - spec/services/ide/base_config_service_spec.rb + - spec/services/ide/schemas_config_service_spec.rb + - spec/services/ide/terminal_config_service_spec.rb + - spec/services/import/bitbucket_server_service_spec.rb + - spec/services/incident_management/incidents/create_service_spec.rb + - spec/services/incident_management/pager_duty/create_incident_issue_service_spec.rb + - spec/services/incident_management/pager_duty/process_webhook_service_spec.rb + - spec/services/integrations/test/project_service_spec.rb + - spec/services/issuable/bulk_update_service_spec.rb + - spec/services/issues/build_service_spec.rb + - spec/services/issues/clone_service_spec.rb + - spec/services/issues/create_service_spec.rb + - spec/services/issues/export_csv_service_spec.rb + - spec/services/issues/move_service_spec.rb + - spec/services/issues/related_branches_service_spec.rb + - spec/services/jira_connect/sync_service_spec.rb + - spec/services/jira_import/start_import_service_spec.rb + - spec/services/jira_import/users_importer_spec.rb + - spec/services/markdown_content_rewriter_service_spec.rb + - spec/services/members/create_service_spec.rb + - spec/services/members/invite_service_spec.rb + - spec/services/merge_requests/base_service_spec.rb + - spec/services/merge_requests/create_pipeline_service_spec.rb + - spec/services/merge_requests/export_csv_service_spec.rb + - spec/services/merge_requests/merge_orchestration_service_spec.rb + - spec/services/merge_requests/merge_service_spec.rb + - spec/services/merge_requests/merge_to_ref_service_spec.rb + - spec/services/metrics/dashboard/annotations/create_service_spec.rb + - spec/services/metrics/dashboard/gitlab_alert_embed_service_spec.rb + - spec/services/metrics/users_starred_dashboards/create_service_spec.rb + - spec/services/notes/copy_service_spec.rb + - spec/services/notes/create_service_spec.rb + - spec/services/notes/destroy_service_spec.rb + - spec/services/notes/quick_actions_service_spec.rb + - spec/services/notes/update_service_spec.rb + - spec/services/notification_service_spec.rb + - spec/services/packages/composer/create_package_service_spec.rb + - spec/services/packages/conan/search_service_spec.rb + - spec/services/packages/create_package_file_service_spec.rb + - spec/services/packages/debian/find_or_create_package_service_spec.rb + - spec/services/packages/generic/create_package_file_service_spec.rb + - spec/services/packages/maven/find_or_create_package_service_spec.rb + - spec/services/packages/nuget/search_service_spec.rb + - spec/services/packages/rubygems/dependency_resolver_service_spec.rb + - spec/services/pod_logs/base_service_spec.rb + - spec/services/pod_logs/elasticsearch_service_spec.rb + - spec/services/pod_logs/kubernetes_service_spec.rb + - spec/services/projects/alerting/notify_service_spec.rb + - spec/services/projects/create_service_spec.rb + - spec/services/projects/destroy_rollback_service_spec.rb + - spec/services/projects/destroy_service_spec.rb + - spec/services/projects/gitlab_projects_import_service_spec.rb + - spec/services/projects/group_links/create_service_spec.rb + - spec/services/projects/group_links/destroy_service_spec.rb + - spec/services/projects/group_links/update_service_spec.rb + - spec/services/projects/prometheus/alerts/notify_service_spec.rb + - spec/services/projects/transfer_service_spec.rb + - spec/services/projects/update_pages_service_spec.rb + - spec/services/prometheus/create_default_alerts_service_spec.rb + - spec/services/quick_actions/interpret_service_spec.rb + - spec/services/releases/create_evidence_service_spec.rb + - spec/services/repositories/destroy_rollback_service_spec.rb + - spec/services/repositories/destroy_service_spec.rb + - spec/services/repositories/shell_destroy_service_spec.rb + - spec/services/resource_access_tokens/create_service_spec.rb + - spec/services/resource_access_tokens/revoke_service_spec.rb + - spec/services/resource_events/change_labels_service_spec.rb + - spec/services/resource_events/merge_into_notes_service_spec.rb + - spec/services/security/ci_configuration/sast_create_service_spec.rb + - spec/services/snippets/bulk_destroy_service_spec.rb + - spec/services/snippets/create_service_spec.rb + - spec/services/snippets/update_service_spec.rb + - spec/services/spam/ham_service_spec.rb + - spec/services/spam/spam_action_service_spec.rb + - spec/services/spam/spam_verdict_service_spec.rb + - spec/services/system_note_service_spec.rb + - spec/services/system_notes/issuables_service_spec.rb + - spec/services/test_hooks/project_service_spec.rb + - spec/services/test_hooks/system_service_spec.rb + - spec/services/users/approve_service_spec.rb + - spec/services/users/reject_service_spec.rb + - spec/services/users/validate_otp_service_spec.rb + - spec/services/wiki_pages/event_create_service_spec.rb + - spec/support/shared_examples/graphql/design_fields_shared_examples.rb + - spec/support/shared_examples/graphql/mutations/set_assignees_shared_examples.rb + - spec/support/shared_examples/models/slack_mattermost_notifications_shared_examples.rb + - spec/support/shared_examples/quick_actions/issuable/issuable_quick_actions_shared_examples.rb + - spec/support/shared_examples/services/container_registry_auth_service_shared_examples.rb + - spec/support/shared_examples/services/packages_shared_examples.rb + - spec/tasks/gitlab/db_rake_spec.rb + - spec/tasks/gitlab/packages/composer_rake_spec.rb + - spec/tasks/gitlab/snippets_rake_spec.rb + - spec/uploaders/content_type_whitelist_spec.rb + - spec/uploaders/dependency_proxy/file_uploader_spec.rb + - spec/views/admin/application_settings/_eks.html.haml_spec.rb + - spec/views/admin/application_settings/_package_registry.html.haml_spec.rb + - spec/views/layouts/nav/sidebar/_project_security_link.html.haml_spec.rb + - spec/views/projects/pipelines/new.html.haml_spec.rb + - spec/views/projects/pipelines/show.html.haml_spec.rb + - spec/views/search/_results.html.haml_spec.rb + - spec/views/shared/_label_row.html.haml_spec.rb + - spec/views/shared/milestones/_top.html.haml_spec.rb + - spec/workers/ci/create_cross_project_pipeline_worker_spec.rb + - spec/workers/cluster_update_app_worker_spec.rb + - spec/workers/environments/canary_ingress/update_worker_spec.rb + - spec/workers/expire_job_cache_worker_spec.rb + - spec/workers/gitlab/jira_import/import_issue_worker_spec.rb + - spec/workers/gitlab/jira_import/stage/start_import_worker_spec.rb + - spec/workers/gitlab/jira_import/stuck_jira_import_jobs_worker_spec.rb + - spec/workers/import_issues_csv_worker_spec.rb + - spec/workers/incident_management/add_severity_system_note_worker_spec.rb + - spec/workers/incident_management/process_alert_worker_spec.rb + - spec/workers/incident_management/process_prometheus_alert_worker_spec.rb + - spec/workers/jira_connect/sync_project_worker_spec.rb + - spec/workers/namespaces/onboarding_issue_created_worker_spec.rb + - spec/workers/packages/composer/cache_update_worker_spec.rb + - spec/workers/pages_domain_ssl_renewal_cron_worker_spec.rb + - spec/workers/projects/git_garbage_collect_worker_spec.rb + - spec/workers/prometheus/create_default_alerts_worker_spec.rb + - spec/workers/propagate_integration_group_worker_spec.rb + - spec/workers/propagate_integration_project_worker_spec.rb + - spec/workers/run_pipeline_schedule_worker_spec.rb + - spec/workers/update_external_pull_requests_worker_spec.rb + RSpec/TimecopFreeze: Exclude: - 'ee/spec/controllers/admin/application_settings_controller_spec.rb' @@ -2573,3 +3560,20 @@ Cop/UserAdmin: - 'lib/gitlab/performance_bar.rb' - 'lib/gitlab/visibility_level.rb' - 'qa/qa/runtime/api/client.rb' + +# WIP https://gitlab.com/gitlab-org/gitlab/-/issues/325744 +Performance/OpenStruct: + Exclude: + - 'Guardfile' + - 'app/finders/snippets_finder.rb' + - 'app/helpers/application_settings_helper.rb' + - 'app/models/cycle_analytics/project_level_stage_adapter.rb' + - 'ee/lib/gitlab/graphql/aggregations/epics/epic_node.rb' + - 'ee/lib/gitlab/graphql/aggregations/epics/epic_node.rb' + - 'lib/api/wikis.rb' + - 'lib/gitlab/ci/ansi2html.rb' + - 'lib/gitlab/ci/reports/test_suite_comparer.rb' + - 'lib/gitlab/git/diff_collection.rb' + - 'lib/gitlab/import_export/after_export_strategies/base_after_export_strategy.rb' + - 'lib/gitlab/testing/request_inspector_middleware.rb' + - 'lib/mattermost/session.rb' diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index d6982146426..35778f056b4 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -323,10 +323,6 @@ Performance/Detect: Performance/MethodObjectAsBlock: Enabled: false -# Offense count: 42 -Performance/OpenStruct: - Enabled: false - # Offense count: 18 # Cop supports --auto-correct. # Configuration parameters: AutoCorrect. @@ -380,11 +376,6 @@ RSpec/EmptyExampleGroup: - 'ee/spec/services/personal_access_tokens/revoke_invalid_tokens_spec.rb' - 'spec/services/projects/prometheus/alerts/notify_service_spec.rb' -# Offense count: 1162 -# Cop supports --auto-correct. -RSpec/EmptyLineAfterFinalLetItBe: - Enabled: false - # Offense count: 1428 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle. diff --git a/Gemfile b/Gemfile index 1774f09a61a..522122b13e4 100644 --- a/Gemfile +++ b/Gemfile @@ -440,11 +440,7 @@ end gem 'octokit', '~> 4.15' # https://gitlab.com/gitlab-org/gitlab/issues/207207 -gem 'gitlab-mail_room', '~> 0.0.10', require: false -# Ruby v3.0 promoted net-http and net-imap from stdlib. Adding net-http as a -# dependency avoids "already initialized constant errors" if net-imap is installed. -gem 'net-http', '~> 0.1' -gem 'uri', '= 0.10.0' # Lock this for bundler v2.1.4 +gem 'gitlab-mail_room', '~> 0.0.9', require: 'mail_room' gem 'email_reply_trimmer', '~> 0.1' gem 'html2text' diff --git a/Gemfile.lock b/Gemfile.lock index 5a2787130ef..5d63cb1cb2d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -268,7 +268,6 @@ GEM diff-lcs (1.4.4) diff_match_patch (0.1.0) diffy (3.3.0) - digest (3.0.0) discordrb-webhooks (3.4.2) rest-client (>= 2.0.0) docile (1.3.2) @@ -465,8 +464,7 @@ GEM pg_query (~> 1.3) redis (> 3.0.0, < 5.0.0) gitlab-license (1.3.1) - gitlab-mail_room (0.0.10) - net-imap (>= 0.2.1) + gitlab-mail_room (0.0.9) gitlab-markup (1.7.1) gitlab-net-dns (0.9.1) gitlab-pry-byebug (3.9.0) @@ -765,18 +763,10 @@ GEM mustermann (>= 1.0.0) nap (1.1.0) nenv (0.3.0) - net-http (0.1.1) - net-protocol - uri net-http-persistent (4.0.1) connection_pool (~> 2.2) - net-imap (0.2.1) - digest - net-protocol - strscan net-ldap (0.16.3) net-ntp (2.1.3) - net-protocol (0.1.0) net-scp (3.0.0) net-ssh (>= 2.6.5, < 7.0.0) net-ssh (6.0.0) @@ -1218,7 +1208,6 @@ GEM state_machines-activerecord (0.8.0) activerecord (>= 5.1) state_machines-activemodel (>= 0.8.0) - strscan (3.0.0) swd (1.1.2) activesupport (>= 3) attr_required (>= 0.0.5) @@ -1289,7 +1278,6 @@ GEM equalizer (~> 0.0.9) parser (>= 2.6.5) procto (~> 0.0.2) - uri (0.10.0) uri_template (0.7.0) valid_email (0.1.3) activemodel @@ -1439,7 +1427,7 @@ DEPENDENCIES gitlab-fog-google (~> 1.13) gitlab-labkit (~> 0.16.2) gitlab-license (~> 1.3) - gitlab-mail_room (~> 0.0.10) + gitlab-mail_room (~> 0.0.9) gitlab-markup (~> 1.7.1) gitlab-net-dns (~> 0.9.1) gitlab-pry-byebug @@ -1501,7 +1489,6 @@ DEPENDENCIES mini_magick (~> 4.10.1) minitest (~> 5.11.0) multi_json (~> 1.14.1) - net-http (~> 0.1) net-ldap (~> 0.16.3) net-ntp net-ssh (~> 6.0) @@ -1610,7 +1597,6 @@ DEPENDENCIES unicorn (~> 5.5) unicorn-worker-killer (~> 0.4.4) unleash (~> 0.1.5) - uri (= 0.10.0) valid_email (~> 0.1) validates_hostname (~> 1.0.11) version_sorter (~> 2.2.4) diff --git a/app/assets/javascripts/vue_shared/components/gl_toggle_vuex.vue b/app/assets/javascripts/vue_shared/components/gl_toggle_vuex.vue deleted file mode 100644 index b649dac029a..00000000000 --- a/app/assets/javascripts/vue_shared/components/gl_toggle_vuex.vue +++ /dev/null @@ -1,49 +0,0 @@ - - - diff --git a/app/models/deployment.rb b/app/models/deployment.rb index f000e474605..5b3671923cc 100644 --- a/app/models/deployment.rb +++ b/app/models/deployment.rb @@ -243,19 +243,16 @@ class Deployment < ApplicationRecord def previous_deployment @previous_deployment ||= - project.deployments.joins(:environment) - .where(environments: { name: self.environment.name }, ref: self.ref) - .where.not(id: self.id) + self.class.for_environment(environment_id) + .where(ref: ref) + .where.not(id: id) .order(id: :desc) .take end def previous_environment_deployment - project - .deployments + self.class.for_environment(environment_id) .success - .joins(:environment) - .where(environments: { name: environment.name }) .where.not(id: self.id) .order(id: :desc) .take diff --git a/changelogs/unreleased/id-n-1-for-merge-request-commits.yml b/changelogs/unreleased/id-n-1-for-merge-request-commits.yml new file mode 100644 index 00000000000..b958a8b3c7e --- /dev/null +++ b/changelogs/unreleased/id-n-1-for-merge-request-commits.yml @@ -0,0 +1,5 @@ +--- +title: Remove N+1 for API commits/:sha/merge_requests +merge_request: 57290 +author: +type: performance diff --git a/changelogs/unreleased/optimise_previous_environment_deployment.yml b/changelogs/unreleased/optimise_previous_environment_deployment.yml new file mode 100644 index 00000000000..ee4baafb5b6 --- /dev/null +++ b/changelogs/unreleased/optimise_previous_environment_deployment.yml @@ -0,0 +1,5 @@ +--- +title: Optimise query for Deployment#previous_environment_deployment in LinkMergeRequestWorker +merge_request: 57039 +author: +type: performance diff --git a/changelogs/unreleased/sh-update-mailroom.yml b/changelogs/unreleased/sh-update-mailroom.yml deleted file mode 100644 index b53221ba787..00000000000 --- a/changelogs/unreleased/sh-update-mailroom.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update mailroom to v0.0.10 -merge_request: 56913 -author: -type: fixed diff --git a/config/dependency_decisions.yml b/config/dependency_decisions.yml index 326c7acb28a..774254d2ff1 100644 --- a/config/dependency_decisions.yml +++ b/config/dependency_decisions.yml @@ -331,9 +331,3 @@ :why: https://github.com/xijo/reverse_markdown/blob/master/LICENSE :versions: [] :when: 2021-02-03 08:47:28.792907000 Z -- - :approve - - net-protocol - - :who: Stan Hu - :why: "This license is the same as the Ruby license (BSD): https://github.com/ruby/net-protocol/blob/master/LICENSE.txt" - :versions: [] - :when: 2021-03-18 00:00:46.124036000 Z diff --git a/doc/administration/instance_limits.md b/doc/administration/instance_limits.md index 9077f1e3b91..1c714dea02b 100644 --- a/doc/administration/instance_limits.md +++ b/doc/administration/instance_limits.md @@ -149,7 +149,7 @@ limited to 1KiB, and descriptions (the rest of the message) will be limited to The maximum number of issues loaded on the milestone overview page is 3000. When the number exceeds the limit the page displays an alert and links to a paginated -[issue list](../user/project/issues/index.md#issues-list) of all issues in the milestone. +[issue list](../user/project/issues/managing_issues.md) of all issues in the milestone. - **Limit:** 3000 issues diff --git a/doc/development/experiment_guide/gitlab_experiment.md b/doc/development/experiment_guide/gitlab_experiment.md index 81d6fc01c5f..a01ad54b697 100644 --- a/doc/development/experiment_guide/gitlab_experiment.md +++ b/doc/development/experiment_guide/gitlab_experiment.md @@ -504,18 +504,20 @@ so you can use it when resolving some concepts around experimentation in the cli ### Use experiments in Vue With the `experiment` component, you can define slots that match the name of the -variants pushed to `window.gon.experiment`. For example, an experiment with the -default variants `control` and `candidate` could be implemented like this: +variants pushed to `window.gon.experiment`. For example, if we alter the `pill_color` +experiment to just use the default variants of `control` and `candidate` like so: ```ruby def show - experiment(:button_color) do |e| + experiment(:pill_color) do |e| e.use { } # control e.try { } # candidate end.run end ``` +We can make use of the named slots `control` and `candidate` in the Vue component: + ```vue ``` -When you use a multivariate experiment, you can use the variant names. For example, -the Vue component for the `pill_color` experiment would look like this: +When you're coding for an experiment with multiple variants, you can use the variant names. +For example, the Vue component for the previously-defined `pill_color` experiment with `red` and `blue` variants would look like this: ```vue