summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-02-15 03:10:54 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-02-15 03:10:54 +0000
commit5c599896773669c8671fd14f79b96d9cd50ccab8 (patch)
tree068ea44f71a34d897e47a0c834236d58ab028a67
parent03bea06527fd8cc8eb65af0b20b6019fc74721d9 (diff)
downloadgitlab-ce-5c599896773669c8671fd14f79b96d9cd50ccab8.tar.gz
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--.haml-lint.yml3
-rw-r--r--.rubocop_todo/capybara/visibility_matcher.yml (renamed from .rubocop_todo/rspec/capybara/visibility_matcher.yml)2
-rw-r--r--.rubocop_todo/cop/redirect_with_status.yml6
-rw-r--r--.rubocop_todo/gitlab_security/public_send.yml9
-rw-r--r--.rubocop_todo/layout/empty_line_after_magic_comment.yml892
-rw-r--r--.rubocop_todo/layout/line_length.yml140
-rw-r--r--.rubocop_todo/layout/space_inside_percent_literal_delimiters.yml6
-rw-r--r--.rubocop_todo/lint/ambiguous_operator_precedence.yml152
-rw-r--r--.rubocop_todo/lint/ambiguous_range.yml9
-rw-r--r--.rubocop_todo/lint/deprecated_constants.yml7
-rw-r--r--.rubocop_todo/lint/duplicate_branch.yml36
-rw-r--r--.rubocop_todo/lint/duplicate_regexp_character_class_element.yml7
-rw-r--r--.rubocop_todo/lint/empty_block.yml211
-rw-r--r--.rubocop_todo/lint/empty_class.yml5
-rw-r--r--.rubocop_todo/lint/incompatible_io_select_with_fiber_scheduler.yml6
-rw-r--r--.rubocop_todo/lint/no_return_in_begin_end_blocks.yml20
-rw-r--r--.rubocop_todo/lint/non_atomic_file_operation.yml46
-rw-r--r--.rubocop_todo/lint/or_assignment_to_constant.yml8
-rw-r--r--.rubocop_todo/lint/redundant_dir_glob_sort.yml11
-rw-r--r--.rubocop_todo/lint/symbol_conversion.yml176
-rw-r--r--.rubocop_todo/lint/to_enum_arguments.yml6
-rw-r--r--.rubocop_todo/lint/triple_quotes.yml7
-rw-r--r--.rubocop_todo/lint/unexpected_block_arity.yml6
-rw-r--r--.rubocop_todo/lint/unmodified_reduce_accumulator.yml5
-rw-r--r--.rubocop_todo/lint/unused_block_argument.yml448
-rw-r--r--.rubocop_todo/lint/unused_method_argument.yml656
-rw-r--r--.rubocop_todo/naming/inclusive_language.yml101
-rw-r--r--.rubocop_todo/performance/string_include.yml9
-rw-r--r--.rubocop_todo/rspec/context_method.yml7
-rw-r--r--.rubocop_todo/rspec/missing_feature_category.yml301
-rw-r--r--.rubocop_todo/security/compound_hash.yml8
-rw-r--r--.rubocop_todo/style/numbered_parameters.yml84
-rw-r--r--.rubocop_todo/style/redundant_regexp_escape.yml9
-rw-r--r--.rubocop_todo/style/zero_length_predicate.yml6
-rw-r--r--Gemfile2
-rw-r--r--Gemfile.checksum20
-rw-r--r--Gemfile.lock42
-rw-r--r--app/models/ability.rb2
-rw-r--r--app/policies/group_policy.rb3
-rw-r--r--app/policies/issuable_policy.rb5
-rw-r--r--app/policies/note_policy.rb10
-rw-r--r--app/policies/project_policy.rb3
-rw-r--r--data/deprecations/15-9-required-pipeline-configuration.yml5
-rw-r--r--db/migrate/20230116143310_add_pages_unique_domain_columns_to_project_settings.rb13
-rw-r--r--db/migrate/20230116143311_add_project_settings_pages_unique_domain_limit.rb13
-rw-r--r--db/migrate/20230116143312_add_project_settings_pages_unique_domain_unique_index.rb20
-rw-r--r--db/post_migrate/20230208100917_fix_partition_ids_for_ci_pipeline_variable.rb30
-rw-r--r--db/post_migrate/20230208103009_fix_partition_ids_for_ci_job_artifact.rb30
-rw-r--r--db/post_migrate/20230209090702_fix_partition_ids_for_ci_build_report_result.rb30
-rw-r--r--db/post_migrate/20230209092204_fix_partition_ids_for_ci_build_trace_metadata.rb30
-rw-r--r--db/schema_migrations/202301161433101
-rw-r--r--db/schema_migrations/202301161433111
-rw-r--r--db/schema_migrations/202301161433121
-rw-r--r--db/schema_migrations/202302081009171
-rw-r--r--db/schema_migrations/202302081030091
-rw-r--r--db/schema_migrations/202302090907021
-rw-r--r--db/schema_migrations/202302090922041
-rw-r--r--db/structure.sql5
-rw-r--r--doc/administration/compliance.md2
-rw-r--r--doc/administration/geo/replication/datatypes.md2
-rw-r--r--doc/ci/yaml/index.md2
-rw-r--r--doc/update/deprecations.md5
-rw-r--r--doc/user/admin_area/settings/continuous_integration.md2
-rw-r--r--doc/user/application_security/get-started-security.md2
-rw-r--r--doc/user/application_security/index.md2
-rw-r--r--doc/user/application_security/policies/scan-execution-policies.md2
-rw-r--r--doc/user/group/compliance_frameworks.md27
-rw-r--r--rubocop/ext/path_util.rb26
-rw-r--r--rubocop/ext/variable_force.rb17
-rw-r--r--rubocop/rubocop.rb5
-rw-r--r--spec/migrations/20230208100917_fix_partition_ids_for_ci_pipeline_variable_spec.rb58
-rw-r--r--spec/migrations/20230208103009_fix_partition_ids_for_ci_job_artifact_spec.rb58
-rw-r--r--spec/migrations/20230209090702_fix_partition_ids_for_ci_build_report_result_spec.rb60
-rw-r--r--spec/migrations/20230209092204_fix_partition_ids_for_ci_build_trace_metadata_spec.rb60
-rw-r--r--spec/requests/api/project_attributes.yml2
-rw-r--r--spec/support/shared_contexts/policies/group_policy_shared_context.rb3
-rw-r--r--spec/support/shared_contexts/policies/project_policy_shared_context.rb8
-rw-r--r--spec/support/shared_examples/policies/project_policy_shared_examples.rb2
78 files changed, 3460 insertions, 560 deletions
diff --git a/.haml-lint.yml b/.haml-lint.yml
index 3655ca44172..24e671eee87 100644
--- a/.haml-lint.yml
+++ b/.haml-lint.yml
@@ -120,9 +120,12 @@ linters:
- Layout/SpaceInsideHashLiteralBraces
- Layout/SpaceInsideStringInterpolation
- Layout/TrailingEmptyLines
+ - Lint/AmbiguousOperatorPrecedence
- Lint/LiteralInInterpolation
- Lint/ParenthesesAsGroupedExpression
- Lint/SafeNavigationConsistency
+ - Lint/SymbolConversion
+ - Lint/UnusedBlockArgument
- Metrics/BlockNesting
- Naming/VariableName
- Performance/RedundantMatch
diff --git a/.rubocop_todo/rspec/capybara/visibility_matcher.yml b/.rubocop_todo/capybara/visibility_matcher.yml
index 5f35e5d90f7..106463c6c4b 100644
--- a/.rubocop_todo/rspec/capybara/visibility_matcher.yml
+++ b/.rubocop_todo/capybara/visibility_matcher.yml
@@ -1,5 +1,5 @@
---
-RSpec/Capybara/VisibilityMatcher:
+Capybara/VisibilityMatcher:
Exclude:
- 'ee/spec/features/boards/sidebar_spec.rb'
- 'ee/spec/features/epics/epic_show_spec.rb'
diff --git a/.rubocop_todo/cop/redirect_with_status.yml b/.rubocop_todo/cop/redirect_with_status.yml
new file mode 100644
index 00000000000..3b4d9d2681e
--- /dev/null
+++ b/.rubocop_todo/cop/redirect_with_status.yml
@@ -0,0 +1,6 @@
+---
+Cop/RedirectWithStatus:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/concerns/issuable_actions.rb'
+ - 'app/controllers/concerns/membership_actions.rb'
diff --git a/.rubocop_todo/gitlab_security/public_send.yml b/.rubocop_todo/gitlab_security/public_send.yml
new file mode 100644
index 00000000000..2fd77f686bf
--- /dev/null
+++ b/.rubocop_todo/gitlab_security/public_send.yml
@@ -0,0 +1,9 @@
+---
+GitlabSecurity/PublicSend:
+ Details: grace period
+ Exclude:
+ - 'ee/app/helpers/push_rules_helper.rb'
+ - 'ee/app/models/ee/namespace_setting.rb'
+ - 'ee/app/models/ee/project.rb'
+ - 'ee/app/models/push_rule.rb'
+ - 'lib/gitlab/diff/file.rb'
diff --git a/.rubocop_todo/layout/empty_line_after_magic_comment.yml b/.rubocop_todo/layout/empty_line_after_magic_comment.yml
new file mode 100644
index 00000000000..9a8d6f25451
--- /dev/null
+++ b/.rubocop_todo/layout/empty_line_after_magic_comment.yml
@@ -0,0 +1,892 @@
+---
+# Cop supports --autocorrect.
+Layout/EmptyLineAfterMagicComment:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/admin/instance_review_controller.rb'
+ - 'app/controllers/concerns/render_access_tokens.rb'
+ - 'app/controllers/groups/observability_controller.rb'
+ - 'app/controllers/groups/registry/repositories_controller.rb'
+ - 'app/controllers/projects/metrics_dashboard_controller.rb'
+ - 'app/finders/ci/auth_job_finder.rb'
+ - 'app/finders/clusters/knative_services_finder.rb'
+ - 'app/finders/keys_finder.rb'
+ - 'app/finders/packages/composer/packages_finder.rb'
+ - 'app/finders/packages/npm/package_finder.rb'
+ - 'app/finders/packages/package_file_finder.rb'
+ - 'app/finders/packages/package_finder.rb'
+ - 'app/finders/packages/tags_finder.rb'
+ - 'app/finders/releases/group_releases_finder.rb'
+ - 'app/graphql/resolvers/commit_pipelines_resolver.rb'
+ - 'app/graphql/resolvers/group_packages_resolver.rb'
+ - 'app/graphql/resolvers/merge_request_pipelines_resolver.rb'
+ - 'app/graphql/resolvers/project_members_resolver.rb'
+ - 'app/graphql/resolvers/project_milestones_resolver.rb'
+ - 'app/graphql/resolvers/project_packages_resolver.rb'
+ - 'app/graphql/resolvers/project_pipelines_resolver.rb'
+ - 'app/graphql/resolvers/projects/snippets_resolver.rb'
+ - 'app/graphql/resolvers/snippets_resolver.rb'
+ - 'app/graphql/resolvers/users/snippets_resolver.rb'
+ - 'app/graphql/types/access_level_type.rb'
+ - 'app/graphql/types/ci/detailed_status_type.rb'
+ - 'app/graphql/types/ci/status_action_type.rb'
+ - 'app/graphql/types/packages/package_dependency_type.rb'
+ - 'app/graphql/types/repository/blob_type.rb'
+ - 'app/graphql/types/tree/blob_type.rb'
+ - 'app/graphql/types/tree/entry_type.rb'
+ - 'app/graphql/types/tree/submodule_type.rb'
+ - 'app/graphql/types/tree/tree_entry_type.rb'
+ - 'app/graphql/types/tree/tree_type.rb'
+ - 'app/helpers/ci/secure_files_helper.rb'
+ - 'app/helpers/projects/google_cloud/cloudsql_helper.rb'
+ - 'app/helpers/projects/ml/experiments_helper.rb'
+ - 'app/models/airflow.rb'
+ - 'app/models/ci/job_token/allowlist.rb'
+ - 'app/models/commit_signatures/gpg_signature.rb'
+ - 'app/models/commit_signatures/x509_commit_signature.rb'
+ - 'app/models/concerns/analytics/cycle_analytics/stage_event_model.rb'
+ - 'app/models/concerns/commit_signature.rb'
+ - 'app/models/concerns/diff_positionable_note.rb'
+ - 'app/models/concerns/enums/ci/commit_status.rb'
+ - 'app/models/concerns/restricted_signup.rb'
+ - 'app/models/dependency_proxy.rb'
+ - 'app/models/draft_note.rb'
+ - 'app/models/integrations/harbor.rb'
+ - 'app/models/ml.rb'
+ - 'app/models/namespace/traversal_hierarchy.rb'
+ - 'app/models/namespaces/traversal/linear.rb'
+ - 'app/models/packages.rb'
+ - 'app/models/packages/cleanup.rb'
+ - 'app/models/packages/conan.rb'
+ - 'app/models/packages/dependency.rb'
+ - 'app/models/packages/dependency_link.rb'
+ - 'app/models/packages/maven.rb'
+ - 'app/models/packages/maven/metadatum.rb'
+ - 'app/models/packages/npm.rb'
+ - 'app/models/packages/nuget.rb'
+ - 'app/models/packages/package.rb'
+ - 'app/models/packages/package_file.rb'
+ - 'app/models/packages/pypi.rb'
+ - 'app/models/packages/rpm.rb'
+ - 'app/models/packages/rpm/repository_file.rb'
+ - 'app/models/packages/rubygems.rb'
+ - 'app/models/packages/tag.rb'
+ - 'app/models/users/user_follow_user.rb'
+ - 'app/policies/container_registry/tag_policy.rb'
+ - 'app/policies/customer_relations/contact_policy.rb'
+ - 'app/policies/customer_relations/organization_policy.rb'
+ - 'app/policies/dependency_proxy/blob_policy.rb'
+ - 'app/policies/dependency_proxy/group_setting_policy.rb'
+ - 'app/policies/dependency_proxy/image_ttl_group_policy_policy.rb'
+ - 'app/policies/dependency_proxy/manifest_policy.rb'
+ - 'app/policies/metrics/dashboard/annotation_policy.rb'
+ - 'app/policies/packages/composer/metadatum_policy.rb'
+ - 'app/policies/packages/conan/file_metadatum_policy.rb'
+ - 'app/policies/packages/conan/metadatum_policy.rb'
+ - 'app/policies/packages/dependency_link_policy.rb'
+ - 'app/policies/packages/helm/file_metadatum_policy.rb'
+ - 'app/policies/packages/maven/metadatum_policy.rb'
+ - 'app/policies/packages/nuget/dependency_link_metadatum_policy.rb'
+ - 'app/policies/packages/nuget/metadatum_policy.rb'
+ - 'app/policies/packages/package_file_policy.rb'
+ - 'app/policies/packages/package_policy.rb'
+ - 'app/policies/packages/pypi/metadatum_policy.rb'
+ - 'app/policies/packages/tag_policy.rb'
+ - 'app/presenters/commit_status_presenter.rb'
+ - 'app/serializers/draft_note_entity.rb'
+ - 'app/serializers/draft_note_serializer.rb'
+ - 'app/services/ci/pipeline_artifacts/coverage_report_service.rb'
+ - 'app/services/ci/pipeline_artifacts/create_code_quality_mr_diff_report_service.rb'
+ - 'app/services/clusters/build_service.rb'
+ - 'app/services/labels/available_labels_service.rb'
+ - 'app/services/merge_requests/mergeability/check_base_service.rb'
+ - 'app/services/merge_requests/mergeability/check_broken_status_service.rb'
+ - 'app/services/merge_requests/mergeability/check_ci_status_service.rb'
+ - 'app/services/merge_requests/mergeability/check_discussions_status_service.rb'
+ - 'app/services/merge_requests/mergeability/run_checks_service.rb'
+ - 'app/services/metrics/dashboard/cluster_metrics_embed_service.rb'
+ - 'app/services/packages/create_dependency_service.rb'
+ - 'app/services/packages/create_package_file_service.rb'
+ - 'app/services/packages/maven/create_package_service.rb'
+ - 'app/services/packages/maven/find_or_create_package_service.rb'
+ - 'app/services/packages/npm/create_package_service.rb'
+ - 'app/services/packages/npm/create_tag_service.rb'
+ - 'app/services/packages/nuget/create_dependency_service.rb'
+ - 'app/services/packages/remove_tag_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/build_filelist_xml_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/build_other_xml_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/build_primary_xml_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/build_repomd_xml_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/build_xml_base_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/update_xml_service.rb'
+ - 'app/services/packages/update_tags_service.rb'
+ - 'app/uploaders/packages/composer/cache_uploader.rb'
+ - 'app/uploaders/packages/debian/component_file_uploader.rb'
+ - 'app/uploaders/packages/debian/distribution_release_file_uploader.rb'
+ - 'app/uploaders/packages/package_file_uploader.rb'
+ - 'app/uploaders/packages/rpm/repository_file_uploader.rb'
+ - 'app/validators/json_schema_validator.rb'
+ - 'app/views/shared/issuable/_issuable.atom.builder'
+ - 'app/workers/ci/merge_requests/add_todo_when_build_fails_worker.rb'
+ - 'app/workers/concerns/auto_devops_queue.rb'
+ - 'app/workers/concerns/chaos_queue.rb'
+ - 'app/workers/concerns/limited_capacity/job_tracker.rb'
+ - 'app/workers/database/batched_background_migration/ci_database_worker.rb'
+ - 'app/workers/gitlab/import/stuck_project_import_jobs_worker.rb'
+ - 'app/workers/gitlab/phabricator_import/import_tasks_worker.rb'
+ - 'config/application.rb'
+ - 'config/initializers/fog_core_patch.rb'
+ - 'config/initializers/rubyzip.rb'
+ - 'config/initializers/sawyer_patch.rb'
+ - 'config/initializers/seed_fu.rb'
+ - 'config/initializers/sidekiq.rb'
+ - 'config/routes/merge_requests.rb'
+ - 'danger/ce_ee_vue_templates/Dangerfile'
+ - 'danger/feature_flag/Dangerfile'
+ - 'danger/pajamas/Dangerfile'
+ - 'db/migrate/20210929121516_add_releases_author_id_id_created_at_index.rb'
+ - 'db/migrate/20211019153615_add_state_to_merge_request_assignees.rb'
+ - 'db/migrate/20211126113029_add_text_limit_for_static_objects_external_storage_auth_token.rb'
+ - 'db/migrate/20220204093120_create_analytics_cycle_analytics_aggregations.rb'
+ - 'db/migrate/20220215164709_update_application_settings_container_registry_exp_pol_worker_capacity_default.rb'
+ - 'db/migrate/20220506154054_create_sync_namespace_details_trigger.rb'
+ - 'db/migrate/20220524184149_create_sync_project_namespace_details_trigger.rb'
+ - 'db/migrate/20220617141347_create_ci_secure_file_states.rb'
+ - 'db/migrate/20220802154757_add_deactivate_dormant_user_time_setting.rb'
+ - 'db/migrate/20221107115247_change_scim_identity_group_id_remove_null.rb'
+ - 'db/migrate/20221107115413_change_scim_oauth_access_token_group_id_remove_null.rb'
+ - 'db/migrate/20221202202351_remove_index_i_ci_job_token_project_scope_links_on_source_and_target_project.rb'
+ - 'db/migrate/20221216145659_add_pa_clickhouse_connection_string_to_application_settings.rb'
+ - 'db/migrate/20221219103007_add_name_to_ml_candidates.rb'
+ - 'db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb'
+ - 'db/migrate/20230111124512_remove_tmp_index_vulns_on_report_type.rb'
+ - 'db/post_migrate/20211209203820_add_tmp_index_on_report_type.rb'
+ - 'db/post_migrate/20211209203821_convert_stringified_raw_metadata_hash_to_json.rb'
+ - 'db/post_migrate/20220412143551_add_partial_index_on_unencrypted_integrations.rb'
+ - 'db/post_migrate/20220413011328_remove_partial_index_on_unencrypted_integrations.rb'
+ - 'db/post_migrate/20220901071355_cleanup_attention_request_user_callouts.rb'
+ - 'db/post_migrate/20220929091500_add_tmp_index_vulns_on_report_type.rb'
+ - 'db/post_migrate/20221004094814_schedule_destroy_invalid_members.rb'
+ - 'db/post_migrate/20221104170500_add_vulnerability_reads_all_status_index.rb'
+ - 'db/post_migrate/20221210154044_update_active_billable_users_index.rb'
+ - 'ee/app/controllers/concerns/epics_actions.rb'
+ - 'ee/app/controllers/concerns/saml_authorization.rb'
+ - 'ee/app/controllers/ee/projects/analytics/cycle_analytics/stages_controller.rb'
+ - 'ee/app/controllers/ee/projects/security/configuration_controller.rb'
+ - 'ee/app/controllers/ee/projects/settings/ci_cd_controller.rb'
+ - 'ee/app/controllers/groups/epic_boards_controller.rb'
+ - 'ee/app/controllers/groups/saml_providers_controller.rb'
+ - 'ee/app/controllers/groups/security/compliance_dashboards_controller.rb'
+ - 'ee/app/controllers/groups/security/dashboard_controller.rb'
+ - 'ee/app/controllers/groups/security/merge_commit_reports_controller.rb'
+ - 'ee/app/controllers/groups/two_factor_auths_controller.rb'
+ - 'ee/app/controllers/projects/protected_environments_controller.rb'
+ - 'ee/app/finders/groups_with_templates_finder.rb'
+ - 'ee/app/finders/status_page/incidents_finder.rb'
+ - 'ee/app/graphql/ee/types/clusters/agent_type.rb'
+ - 'ee/app/graphql/ee/types/repository/blob_type.rb'
+ - 'ee/app/graphql/types/analytics/devops_adoption/enabled_namespace_type.rb'
+ - 'ee/app/graphql/types/analytics/devops_adoption/snapshot_type.rb'
+ - 'ee/app/graphql/types/compliance_management/compliance_framework_type.rb'
+ - 'ee/app/graphql/types/path_lock_type.rb'
+ - 'ee/app/graphql/types/product_analytics/panel_type.rb'
+ - 'ee/app/graphql/types/timebox_error_type.rb'
+ - 'ee/app/graphql/types/timebox_report_type.rb'
+ - 'ee/app/graphql/types/vulnerability_identifier_input_type.rb'
+ - 'ee/app/graphql/types/vulnerability_scanner_input_type.rb'
+ - 'ee/app/graphql/types/vulnerability_scanner_vendor_input_type.rb'
+ - 'ee/app/helpers/ee/admin/identities_helper.rb'
+ - 'ee/app/helpers/ee/ci/runners_helper.rb'
+ - 'ee/app/helpers/ee/hooks_helper.rb'
+ - 'ee/app/helpers/ee/routing/projects_helper.rb'
+ - 'ee/app/helpers/ee/search_helper.rb'
+ - 'ee/app/helpers/ee/sorting_helper.rb'
+ - 'ee/app/helpers/ee/sorting_titles_values_helper.rb'
+ - 'ee/app/models/analytics/devops_adoption.rb'
+ - 'ee/app/models/approvals/scan_finding_wrapped_rule_set.rb'
+ - 'ee/app/models/concerns/approver_migrate_hook.rb'
+ - 'ee/app/models/concerns/ee/approvable.rb'
+ - 'ee/app/models/concerns/elastic/application_versioned_search.rb'
+ - 'ee/app/models/concerns/security/scan_execution_policy.rb'
+ - 'ee/app/models/dependencies/dependency_list_export.rb'
+ - 'ee/app/models/ee/issue_assignee.rb'
+ - 'ee/app/models/geo/ci_secure_file_state.rb'
+ - 'ee/app/models/namespaces/storage/cli_notification.rb'
+ - 'ee/app/models/namespaces/storage/limit_exclusion.rb'
+ - 'ee/app/models/project_security_setting.rb'
+ - 'ee/app/models/protected_environment.rb'
+ - 'ee/app/models/sbom/vulnerable_component_version.rb'
+ - 'ee/app/models/vulnerabilities/merge_request_link.rb'
+ - 'ee/app/policies/ee/ci/build_policy.rb'
+ - 'ee/app/policies/ee/environment_policy.rb'
+ - 'ee/app/policies/security/finding_policy.rb'
+ - 'ee/app/policies/vulnerabilities/finding_policy.rb'
+ - 'ee/app/presenters/applied_ml/suggested_reviewers_presenter.rb'
+ - 'ee/app/serializers/audit_event_serializer.rb'
+ - 'ee/app/serializers/ee/issue_board_entity.rb'
+ - 'ee/app/serializers/ee/issue_entity.rb'
+ - 'ee/app/serializers/license_compliance/collapsed_comparer_entity.rb'
+ - 'ee/app/serializers/license_compliance/comparer_serializer.rb'
+ - 'ee/app/services/analytics/cycle_analytics/aggregator_service.rb'
+ - 'ee/app/services/arkose/blocked_users_report_service.rb'
+ - 'ee/app/services/audit_events/streaming/headers/base.rb'
+ - 'ee/app/services/audit_events/streaming/headers/create_service.rb'
+ - 'ee/app/services/audit_events/streaming/headers/destroy_service.rb'
+ - 'ee/app/services/audit_events/streaming/headers/update_service.rb'
+ - 'ee/app/services/ee/audit_events/build_service.rb'
+ - 'ee/app/services/ee/ci/process_build_service.rb'
+ - 'ee/app/services/ee/groups/autocomplete_service.rb'
+ - 'ee/app/services/ee/ip_restrictions/update_service.rb'
+ - 'ee/app/services/ee/projects/autocomplete_service.rb'
+ - 'ee/app/services/ee/system_notes/issuables_service.rb'
+ - 'ee/app/services/gitlab_subscriptions/create_trial_or_lead_service.rb'
+ - 'ee/app/services/gitlab_subscriptions/fetch_subscription_plans_service.rb'
+ - 'ee/app/services/gitlab_subscriptions/reconciliations/calculate_seat_count_data_service.rb'
+ - 'ee/app/services/group_saml/group_managed_accounts/clean_up_members_service.rb'
+ - 'ee/app/services/group_saml/sign_up_service.rb'
+ - 'ee/app/services/merge_trains/create_pipeline_service.rb'
+ - 'ee/app/services/merge_trains/refresh_merge_request_service.rb'
+ - 'ee/app/services/merge_trains/refresh_service.rb'
+ - 'ee/app/services/protected_environments/base_service.rb'
+ - 'ee/app/services/protected_environments/create_service.rb'
+ - 'ee/app/services/protected_environments/destroy_service.rb'
+ - 'ee/app/services/protected_environments/environment_dropdown_service.rb'
+ - 'ee/app/services/protected_environments/search_service.rb'
+ - 'ee/app/services/protected_environments/update_service.rb'
+ - 'ee/app/services/users/captcha_challenge_service.rb'
+ - 'ee/app/services/vulnerabilities/manually_create_service.rb'
+ - 'ee/app/workers/ee/issuable_export_csv_worker.rb'
+ - 'ee/app/workers/groups/export_memberships_worker.rb'
+ - 'ee/db/fixtures/development/25_downstream_pipelines.rb'
+ - 'ee/db/geo/migrate/20220617125507_create_ci_secure_file_registry.rb'
+ - 'ee/lib/compliance_management/merge_request_approval_settings/resolver.rb'
+ - 'ee/lib/ee/api/internal/kubernetes.rb'
+ - 'ee/lib/ee/gitlab/ci/parsers/security/validators/schema_validator.rb'
+ - 'ee/lib/ee/gitlab/hook_data/group_member_builder.rb'
+ - 'ee/lib/ee/gitlab/hook_data/issue_builder.rb'
+ - 'ee/lib/ee/gitlab/hook_data/user_builder.rb'
+ - 'ee/lib/ee/gitlab/scim/base_deprovisioning_service.rb'
+ - 'ee/lib/ee/gitlab/scim/base_provisioning_service.rb'
+ - 'ee/lib/ee/gitlab/scim/provisioning_service.rb'
+ - 'ee/lib/elastic/as_json.rb'
+ - 'ee/lib/gem_extensions/elasticsearch/model/adapter/active_record/importing.rb'
+ - 'ee/lib/gem_extensions/elasticsearch/model/adapter/multiple/records.rb'
+ - 'ee/lib/gem_extensions/elasticsearch/model/indexing/instance_methods.rb'
+ - 'ee/lib/gem_extensions/elasticsearch/model/response/records.rb'
+ - 'ee/lib/gitlab/ci/parsers/requirements_management/requirement.rb'
+ - 'ee/lib/gitlab/cidr.rb'
+ - 'ee/lib/quality/seeders/vulnerabilities.rb'
+ - 'ee/spec/components/billing/plan_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/enforcement_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/enforcement_at_limit_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/non_owner_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/non_owner_notification_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/notification_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/usage_quota_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/free_user_cap/usage_quota_trial_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/storage/limit_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/storage/pre_enforcement_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/storage/project_pre_enforcement_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/storage/subgroup_pre_enforcement_alert_component_spec.rb'
+ - 'ee/spec/components/namespaces/storage/user_pre_enforcement_alert_component_spec.rb'
+ - 'ee/spec/controllers/admin/geo/nodes_controller_spec.rb'
+ - 'ee/spec/controllers/ee/projects/autocomplete_sources_controller_spec.rb'
+ - 'ee/spec/controllers/ee/projects/protected_branches_controller_spec.rb'
+ - 'ee/spec/controllers/groups/push_rules_controller_spec.rb'
+ - 'ee/spec/controllers/groups/roadmap_controller_spec.rb'
+ - 'ee/spec/controllers/projects/protected_environments_controller_spec.rb'
+ - 'ee/spec/db/production/license_spec.rb'
+ - 'ee/spec/factories/ci/builds.rb'
+ - 'ee/spec/factories/group_saml_identities.rb'
+ - 'ee/spec/factories/protected_environments.rb'
+ - 'ee/spec/factories/protected_environments/deploy_access_levels.rb'
+ - 'ee/spec/factories/scim_identities.rb'
+ - 'ee/spec/factories/work_items/progress.rb'
+ - 'ee/spec/features/groups/analytics/cycle_analytics/charts_spec.rb'
+ - 'ee/spec/features/groups/analytics/cycle_analytics/multiple_value_streams_spec.rb'
+ - 'ee/spec/features/groups/members/list_members_spec.rb'
+ - 'ee/spec/features/merge_request/user_sees_merge_widget_spec.rb'
+ - 'ee/spec/features/projects/kerberos_clone_instructions_spec.rb'
+ - 'ee/spec/features/projects/settings/merge_request_approvals_settings_spec.rb'
+ - 'ee/spec/features/projects/settings/merge_requests_settings_spec.rb'
+ - 'ee/spec/features/trial_registrations/company_information_spec.rb'
+ - 'ee/spec/finders/auth/group_saml_identity_finder_spec.rb'
+ - 'ee/spec/finders/geo/design_registry_finder_spec.rb'
+ - 'ee/spec/finders/geo/project_registry_status_finder_spec.rb'
+ - 'ee/spec/frontend/fixtures/analytics/charts.rb'
+ - 'ee/spec/frontend/fixtures/analytics/metrics.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_code_stage.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_issue_stage.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_plan_stage.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_review_stage.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_staging_stage.rb'
+ - 'ee/spec/frontend/fixtures/analytics/value_streams_test_stage.rb'
+ - 'ee/spec/frontend/fixtures/saml_providers.rb'
+ - 'ee/spec/graphql/mutations/instance_security_dashboard/add_project_spec.rb'
+ - 'ee/spec/graphql/mutations/issues/promote_to_epic_spec.rb'
+ - 'ee/spec/graphql/mutations/issues/set_weight_spec.rb'
+ - 'ee/spec/graphql/mutations/security/finding/dismiss_spec.rb'
+ - 'ee/spec/graphql/mutations/security_policy/commit_scan_execution_policy_spec.rb'
+ - 'ee/spec/graphql/mutations/security_policy/create_security_policy_project_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/create_external_issue_link_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/create_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/destroy_external_issue_link_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/dismiss_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/finding/dismiss_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/resolve_spec.rb'
+ - 'ee/spec/graphql/mutations/vulnerabilities/revert_to_detected_spec.rb'
+ - 'ee/spec/helpers/ee/auth_helper_spec.rb'
+ - 'ee/spec/helpers/ee/geo_helper_spec.rb'
+ - 'ee/spec/helpers/ee/groups/analytics/cycle_analytics_helper_spec.rb'
+ - 'ee/spec/helpers/ee/invite_members_helper_spec.rb'
+ - 'ee/spec/helpers/ee/namespaces_helper_spec.rb'
+ - 'ee/spec/helpers/ee/saml_providers_helper_spec.rb'
+ - 'ee/spec/helpers/roadmaps_helper_spec.rb'
+ - 'ee/spec/lib/banzai/filter/issuable_reference_expansion_filter_spec.rb'
+ - 'ee/spec/lib/banzai/issuable_extractor_spec.rb'
+ - 'ee/spec/lib/ee/api/helpers/members_helpers_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/backfill_epic_cache_counts_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/migrate_shared_vulnerability_scanners_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/database/gitlab_schema_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/group_member_builder_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/hook_data/issue_builder_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/hook_data/user_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/gitlab/analytics/cycle_analytics/summary/group/stage_summary_spec.rb'
+ - 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/stage_time_summary_spec.rb'
+ - 'ee/spec/lib/gitlab/auth/group_saml/membership_enforcer_spec.rb'
+ - 'ee/spec/lib/gitlab/auth/group_saml/token_actor_spec.rb'
+ - 'ee/spec/lib/gitlab/auth/group_saml/user_spec.rb'
+ - 'ee/spec/lib/gitlab/ci/templates/dependency_scanning_latest_gitlab_ci_yaml_spec.rb'
+ - 'ee/spec/lib/gitlab/code_owners/entry_spec.rb'
+ - 'ee/spec/lib/gitlab/geo/replication/blob_retriever_spec.rb'
+ - 'ee/spec/lib/gitlab/license_scanning/branch_components_spec.rb'
+ - 'ee/spec/lib/gitlab/license_scanning/pipeline_components_spec.rb'
+ - 'ee/spec/lib/gitlab/middleware/ip_restrictor_spec.rb'
+ - 'ee/spec/lib/gitlab/search/client_spec.rb'
+ - 'ee/spec/lib/gitlab/spdx/catalogue_spec.rb'
+ - 'ee/spec/lib/system_check/app/advanced_search_migrations_check_spec.rb'
+ - 'ee/spec/lib/system_check/geo/http_connection_check_spec.rb'
+ - 'ee/spec/migrations/20220411173544_cleanup_orphans_approval_project_rules_spec.rb'
+ - 'ee/spec/models/analytics/cycle_analytics/aggregation_context_spec.rb'
+ - 'ee/spec/models/ci/minutes/quota_spec.rb'
+ - 'ee/spec/models/ci/minutes/usage_spec.rb'
+ - 'ee/spec/models/deployments/approval_summary_spec.rb'
+ - 'ee/spec/models/group_member_spec.rb'
+ - 'ee/spec/models/packages/package_file_spec.rb'
+ - 'ee/spec/models/project_member_spec.rb'
+ - 'ee/spec/models/protected_environment_spec.rb'
+ - 'ee/spec/models/protected_environments/approval_rule_spec.rb'
+ - 'ee/spec/models/protected_environments/deploy_access_level_spec.rb'
+ - 'ee/spec/models/sbom/vulnerable_component_version_spec.rb'
+ - 'ee/spec/models/vulnerabilities/advisory_spec.rb'
+ - 'ee/spec/models/vulnerabilities/finding_spec.rb'
+ - 'ee/spec/models/work_items/progress_spec.rb'
+ - 'ee/spec/policies/app_sec/fuzzing/coverage/corpus_policy_spec.rb'
+ - 'ee/spec/policies/ci/build_policy_spec.rb'
+ - 'ee/spec/policies/deployment_policy_spec.rb'
+ - 'ee/spec/policies/environment_policy_spec.rb'
+ - 'ee/spec/policies/identity_provider_policy_spec.rb'
+ - 'ee/spec/policies/path_lock_policy_spec.rb'
+ - 'ee/spec/policies/saml_provider_policy_spec.rb'
+ - 'ee/spec/presenters/ci/build_presenter_spec.rb'
+ - 'ee/spec/presenters/ci/build_runner_presenter_spec.rb'
+ - 'ee/spec/requests/api/graphql/ci/runners_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/security/finding/create_issue_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/security/finding/revert_to_detected_spec.rb'
+ - 'ee/spec/requests/api/graphql/project/alert_management/integrations_spec.rb'
+ - 'ee/spec/requests/api/graphql/project/issue_status_counts_spec.rb'
+ - 'ee/spec/requests/api/internal/base_spec.rb'
+ - 'ee/spec/requests/api/merge_trains_spec.rb'
+ - 'ee/spec/requests/api/pypi_packages_spec.rb'
+ - 'ee/spec/requests/ee/application_controller_spec.rb'
+ - 'ee/spec/requests/groups/protected_environments_controller_spec.rb'
+ - 'ee/spec/requests/groups/roadmap_controller_spec.rb'
+ - 'ee/spec/routing/admin_routing_spec.rb'
+ - 'ee/spec/routing/user_routing_spec.rb'
+ - 'ee/spec/serializers/ee/blob_entity_spec.rb'
+ - 'ee/spec/serializers/ee/build_details_entity_spec.rb'
+ - 'ee/spec/serializers/ee/ci/job_entity_spec.rb'
+ - 'ee/spec/serializers/license_compliance/collapsed_comparer_entity_spec.rb'
+ - 'ee/spec/serializers/license_compliance/comparer_entity_spec.rb'
+ - 'ee/spec/services/ci/copy_cross_database_associations_service_spec.rb'
+ - 'ee/spec/services/ci/minutes/refresh_cached_data_service_spec.rb'
+ - 'ee/spec/services/ci/process_build_service_spec.rb'
+ - 'ee/spec/services/ci/retry_job_service_spec.rb'
+ - 'ee/spec/services/ci/retry_pipeline_service_spec.rb'
+ - 'ee/spec/services/ee/design_management/delete_designs_service_spec.rb'
+ - 'ee/spec/services/ee/design_management/save_designs_service_spec.rb'
+ - 'ee/spec/services/ee/notes/quick_actions_service_spec.rb'
+ - 'ee/spec/services/ee/users/update_service_spec.rb'
+ - 'ee/spec/services/epics/close_service_spec.rb'
+ - 'ee/spec/services/epics/issue_promote_service_spec.rb'
+ - 'ee/spec/services/epics/reopen_service_spec.rb'
+ - 'ee/spec/services/issue_feature_flags/list_service_spec.rb'
+ - 'ee/spec/services/licenses/destroy_service_spec.rb'
+ - 'ee/spec/services/milestones/update_service_spec.rb'
+ - 'ee/spec/services/protected_environments/create_service_spec.rb'
+ - 'ee/spec/services/protected_environments/destroy_service_spec.rb'
+ - 'ee/spec/services/protected_environments/environment_dropdown_service_spec.rb'
+ - 'ee/spec/services/protected_environments/search_service_spec.rb'
+ - 'ee/spec/services/protected_environments/update_service_spec.rb'
+ - 'ee/spec/services/wikis/create_attachment_service_spec.rb'
+ - 'ee/spec/support/helpers/board_helpers.rb'
+ - 'ee/spec/workers/app_sec/dast/profile_schedule_worker_spec.rb'
+ - 'ee/spec/workers/integrations/slack_event_worker_spec.rb'
+ - 'lib/api/commits.rb'
+ - 'lib/api/concerns/packages/nuget_endpoints.rb'
+ - 'lib/api/go_proxy.rb'
+ - 'lib/api/integrations.rb'
+ - 'lib/api/maven_packages.rb'
+ - 'lib/api/npm_instance_packages.rb'
+ - 'lib/api/npm_project_packages.rb'
+ - 'lib/api/rpm_project_packages.rb'
+ - 'lib/backup/dump/postgres.rb'
+ - 'lib/gitlab/auth/blocked_user_tracker.rb'
+ - 'lib/gitlab/auth/otp/fortinet.rb'
+ - 'lib/gitlab/background_migration/backfill_imported_issue_search_data.rb'
+ - 'lib/gitlab/background_migration/backfill_issue_search_data.rb'
+ - 'lib/gitlab/background_migration/backfill_project_import_level.rb'
+ - 'lib/gitlab/background_migration/backfill_project_namespace_details.rb'
+ - 'lib/gitlab/background_migration/drop_invalid_security_findings.rb'
+ - 'lib/gitlab/background_migration/mailers/unconfirm_mailer.rb'
+ - 'lib/gitlab/background_migration/migrate_u2f_webauthn.rb'
+ - 'lib/gitlab/background_migration/populate_test_reports_issue_id.rb'
+ - 'lib/gitlab/background_migration/update_users_where_two_factor_auth_required_from_group.rb'
+ - 'lib/gitlab/ci/secure_files/mobile_provision.rb'
+ - 'lib/gitlab/cleanup/remote_uploads.rb'
+ - 'lib/gitlab/database/migrations/background_migration_helpers.rb'
+ - 'lib/gitlab/database/partitioning/detached_partition_dropper.rb'
+ - 'lib/gitlab/diff/highlight_cache.rb'
+ - 'lib/gitlab/diff/rendered/notebook/diff_file.rb'
+ - 'lib/gitlab/diff/rendered/notebook/diff_file_helper.rb'
+ - 'lib/gitlab/diff/stats_cache.rb'
+ - 'lib/gitlab/discussions_diff/highlight_cache.rb'
+ - 'lib/gitlab/doorkeeper_secret_storing/secret/pbkdf2_sha512.rb'
+ - 'lib/gitlab/git/base_error.rb'
+ - 'lib/gitlab/graphql/board/issues_connection_extension.rb'
+ - 'lib/gitlab/graphql/extensions/externally_paginated_array_extension.rb'
+ - 'lib/gitlab/graphql/extensions/forward_only_externally_paginated_array_extension.rb'
+ - 'lib/gitlab/graphql/project/dast_profile_connection_extension.rb'
+ - 'lib/gitlab/import_export/recursive_merge_folders.rb'
+ - 'lib/gitlab/import_export/shared.rb'
+ - 'lib/gitlab/json_logger.rb'
+ - 'lib/gitlab/kubernetes/helm/v2/certificate.rb'
+ - 'lib/gitlab/lfs/client.rb'
+ - 'lib/gitlab/merge_requests/mergeability/check_result.rb'
+ - 'lib/gitlab/merge_requests/mergeability/redis_interface.rb'
+ - 'lib/gitlab/merge_requests/mergeability/results_store.rb'
+ - 'lib/gitlab/merge_requests/message_generator.rb'
+ - 'lib/gitlab/pagination/keyset/sql_type_missing_error.rb'
+ - 'lib/gitlab/phabricator_import/cache/map.rb'
+ - 'lib/gitlab/phabricator_import/conduit.rb'
+ - 'lib/gitlab/phabricator_import/conduit/client.rb'
+ - 'lib/gitlab/phabricator_import/conduit/maniphest.rb'
+ - 'lib/gitlab/phabricator_import/conduit/pagination.rb'
+ - 'lib/gitlab/phabricator_import/conduit/response.rb'
+ - 'lib/gitlab/phabricator_import/conduit/tasks_response.rb'
+ - 'lib/gitlab/phabricator_import/conduit/user.rb'
+ - 'lib/gitlab/phabricator_import/issues/importer.rb'
+ - 'lib/gitlab/phabricator_import/issues/task_importer.rb'
+ - 'lib/gitlab/phabricator_import/representation/task.rb'
+ - 'lib/gitlab/phabricator_import/worker_state.rb'
+ - 'lib/gitlab/relative_positioning/gap.rb'
+ - 'lib/gitlab/safe_device_detector.rb'
+ - 'lib/gitlab/spamcheck/client.rb'
+ - 'lib/gitlab/tracking/destinations/snowplow_micro.rb'
+ - 'lib/gitlab/utils/mime_type.rb'
+ - 'lib/gitlab/x509/commit.rb'
+ - 'lib/gitlab/x509/signature.rb'
+ - 'lib/gitlab/x509/tag.rb'
+ - 'lib/security/report_schema_version_matcher.rb'
+ - 'lib/security/weak_passwords.rb'
+ - 'lib/tasks/gitlab/cleanup.rake'
+ - 'lib/tasks/gitlab/docs/redirect.rake'
+ - 'lib/tasks/gitlab/metrics_exporter.rake'
+ - 'lib/tasks/gitlab/password.rake'
+ - 'lib/tasks/gitlab/security/update_banned_ssh_keys.rake'
+ - 'qa/qa/ee/runtime/saml.rb'
+ - 'qa/qa/page/component/access_tokens.rb'
+ - 'qa/qa/page/group/settings/package_registries.rb'
+ - 'qa/qa/runtime/ip_address.rb'
+ - 'qa/qa/runtime/mail_hog.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/source_editor/source_editor_toolbar_spec.rb'
+ - 'qa/qa/specs/features/ee/api/7_configure/kubernetes/kubernetes_agent_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/1_manage/integrations/slash_commands_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/1_manage/ldap/admin_ldap_sync_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/4_verify/job_trace_archival_spec.rb'
+ - 'qa/qa/support/otp.rb'
+ - 'qa/qa/support/repeater.rb'
+ - 'qa/spec/tools/test_resources_data_processor_spec.rb'
+ - 'rubocop/cop/group_public_or_visible_to_user.rb'
+ - 'rubocop/cop/migration/add_reference.rb'
+ - 'rubocop/cop/migration/prevent_index_creation.rb'
+ - 'scripts/lib/glfm/shared.rb'
+ - 'scripts/lib/glfm/update_example_snapshots.rb'
+ - 'scripts/lib/glfm/update_specification.rb'
+ - 'scripts/lib/glfm/verify_all_generated_files_are_up_to_date.rb'
+ - 'spec/components/layouts/horizontal_section_component_spec.rb'
+ - 'spec/components/pajamas/alert_component_spec.rb'
+ - 'spec/components/pajamas/avatar_component_spec.rb'
+ - 'spec/components/pajamas/banner_component_spec.rb'
+ - 'spec/components/pajamas/button_component_spec.rb'
+ - 'spec/components/pajamas/card_component_spec.rb'
+ - 'spec/components/pajamas/checkbox_component_spec.rb'
+ - 'spec/components/pajamas/checkbox_tag_component_spec.rb'
+ - 'spec/components/pajamas/component_spec.rb'
+ - 'spec/components/pajamas/concerns/checkbox_radio_label_with_help_text_spec.rb'
+ - 'spec/components/pajamas/concerns/checkbox_radio_options_spec.rb'
+ - 'spec/components/pajamas/radio_component_spec.rb'
+ - 'spec/components/pajamas/spinner_component_spec.rb'
+ - 'spec/components/pajamas/toggle_component_spec.rb'
+ - 'spec/components/previews/pajamas/alert_component_preview.rb'
+ - 'spec/components/previews/pajamas/avatar_component_preview.rb'
+ - 'spec/components/previews/pajamas/banner_component_preview.rb'
+ - 'spec/components/previews/pajamas/button_component_preview.rb'
+ - 'spec/components/previews/pajamas/card_component_preview.rb'
+ - 'spec/components/previews/pajamas/spinner_component_preview.rb'
+ - 'spec/controllers/application_controller_spec.rb'
+ - 'spec/controllers/concerns/analytics/cycle_analytics/value_stream_actions_spec.rb'
+ - 'spec/controllers/projects/jobs_controller_spec.rb'
+ - 'spec/controllers/projects/merge_requests/drafts_controller_spec.rb'
+ - 'spec/factories/airflow/dags.rb'
+ - 'spec/factories/alert_management/alerts.rb'
+ - 'spec/factories/draft_note.rb'
+ - 'spec/factories/ml/candidates.rb'
+ - 'spec/factories/ml/experiments.rb'
+ - 'spec/factories/packages/composer/cache_files.rb'
+ - 'spec/factories/packages/packages.rb'
+ - 'spec/features/issuables/sorting_list_spec.rb'
+ - 'spec/features/merge_request/merge_request_discussion_lock_spec.rb'
+ - 'spec/features/merge_request/user_views_merge_request_from_deleted_fork_spec.rb'
+ - 'spec/features/projects/pages/user_adds_domain_spec.rb'
+ - 'spec/features/projects/pages/user_configures_pages_pipeline_spec.rb'
+ - 'spec/features/projects/pages/user_edits_lets_encrypt_settings_spec.rb'
+ - 'spec/features/projects/pages/user_edits_settings_spec.rb'
+ - 'spec/features/projects/settings/user_manages_merge_requests_settings_spec.rb'
+ - 'spec/features/projects/tags/user_views_tag_spec.rb'
+ - 'spec/features/projects/tags/user_views_tags_spec.rb'
+ - 'spec/finders/ci/auth_job_finder_spec.rb'
+ - 'spec/finders/packages/composer/packages_finder_spec.rb'
+ - 'spec/finders/packages/conan/package_file_finder_spec.rb'
+ - 'spec/finders/packages/conan/package_finder_spec.rb'
+ - 'spec/finders/packages/group_packages_finder_spec.rb'
+ - 'spec/finders/packages/npm/package_finder_spec.rb'
+ - 'spec/finders/packages/nuget/package_finder_spec.rb'
+ - 'spec/finders/packages/package_file_finder_spec.rb'
+ - 'spec/finders/packages/tags_finder_spec.rb'
+ - 'spec/finders/projects/members/effective_access_level_finder_spec.rb'
+ - 'spec/finders/projects/members/effective_access_level_per_user_finder_spec.rb'
+ - 'spec/frontend/fixtures/analytics.rb'
+ - 'spec/graphql/mutations/ci/job_token_scope/add_project_spec.rb'
+ - 'spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb'
+ - 'spec/graphql/mutations/design_management/upload_spec.rb'
+ - 'spec/graphql/types/access_level_type_spec.rb'
+ - 'spec/graphql/types/label_type_spec.rb'
+ - 'spec/graphql/types/users/email_type_spec.rb'
+ - 'spec/graphql/types/users/namespace_commit_email_type_spec.rb'
+ - 'spec/helpers/analytics/cycle_analytics_helper_spec.rb'
+ - 'spec/helpers/keyset_helper_spec.rb'
+ - 'spec/helpers/sorting_helper_spec.rb'
+ - 'spec/initializers/mail_encoding_patch_spec.rb'
+ - 'spec/lib/constraints/admin_constrainer_spec.rb'
+ - 'spec/lib/gitlab/analytics/date_filler_spec.rb'
+ - 'spec/lib/gitlab/background_migration/drop_invalid_security_findings_spec.rb'
+ - 'spec/lib/gitlab/background_migration/encrypt_integration_properties_spec.rb'
+ - 'spec/lib/gitlab/background_migration/encrypt_static_object_token_spec.rb'
+ - 'spec/lib/gitlab/background_migration/legacy_upload_mover_spec.rb'
+ - 'spec/lib/gitlab/background_migration/legacy_uploads_migrator_spec.rb'
+ - 'spec/lib/gitlab/background_migration/remove_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/lib/gitlab/background_migration/remove_occurrence_pipelines_and_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/lib/gitlab/class_attributes_spec.rb'
+ - 'spec/lib/gitlab/cleanup/remote_uploads_spec.rb'
+ - 'spec/lib/gitlab/conan_token_spec.rb'
+ - 'spec/lib/gitlab/database/gitlab_schema_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/instrumentation_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/lock_retry_mixin_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/query_details_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/query_log_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/query_statistics_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/total_database_size_change_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/transaction_duration_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/runner_spec.rb'
+ - 'spec/lib/gitlab/file_markdown_link_builder_spec.rb'
+ - 'spec/lib/gitlab/file_type_detection_spec.rb'
+ - 'spec/lib/gitlab/git/patches/collection_spec.rb'
+ - 'spec/lib/gitlab/git/patches/commit_patches_spec.rb'
+ - 'spec/lib/gitlab/git/patches/patch_spec.rb'
+ - 'spec/lib/gitlab/git_access_design_spec.rb'
+ - 'spec/lib/gitlab/gl_repository/repo_type_spec.rb'
+ - 'spec/lib/gitlab/graphql/calls_gitaly/field_extension_spec.rb'
+ - 'spec/lib/gitlab/graphql/limit/field_call_count_spec.rb'
+ - 'spec/lib/gitlab/graphql/markdown_field_spec.rb'
+ - 'spec/lib/gitlab/graphql/mount_mutation_spec.rb'
+ - 'spec/lib/gitlab/graphql/present/field_extension_spec.rb'
+ - 'spec/lib/gitlab/graphql/tracers/logger_tracer_spec.rb'
+ - 'spec/lib/gitlab/graphql/tracers/timer_tracer_spec.rb'
+ - 'spec/lib/gitlab/health_checks/redis_spec.rb'
+ - 'spec/lib/gitlab/import/set_async_jid_spec.rb'
+ - 'spec/lib/gitlab/json_cache_spec.rb'
+ - 'spec/lib/gitlab/jwt_token_spec.rb'
+ - 'spec/lib/gitlab/kroki_spec.rb'
+ - 'spec/lib/gitlab/kubernetes/helm/v2/certificate_spec.rb'
+ - 'spec/lib/gitlab/markdown_cache/active_record/extension_spec.rb'
+ - 'spec/lib/gitlab/markdown_cache/redis/extension_spec.rb'
+ - 'spec/lib/gitlab/markdown_cache/redis/store_spec.rb'
+ - 'spec/lib/gitlab/metrics/dashboard/cache_spec.rb'
+ - 'spec/lib/gitlab/metrics/rails_slis_spec.rb'
+ - 'spec/lib/gitlab/middleware/handle_malformed_strings_spec.rb'
+ - 'spec/lib/gitlab/middleware/request_context_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/client_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/maniphest_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/response_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/tasks_response_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/user_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/conduit/users_response_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/issues/importer_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/issues/task_importer_spec.rb'
+ - 'spec/lib/gitlab/phabricator_import/project_creator_spec.rb'
+ - 'spec/lib/gitlab/request_endpoints_spec.rb'
+ - 'spec/lib/gitlab/slash_commands/presenters/issue_new_spec.rb'
+ - 'spec/lib/gitlab/ssh/commit_spec.rb'
+ - 'spec/lib/gitlab/terraform_registry_token_spec.rb'
+ - 'spec/lib/gitlab/tracking_spec.rb'
+ - 'spec/lib/gitlab/utils/lazy_attributes_spec.rb'
+ - 'spec/lib/gitlab/x509/commit_spec.rb'
+ - 'spec/lib/gitlab/x509/tag_spec.rb'
+ - 'spec/lib/security/report_schema_version_matcher_spec.rb'
+ - 'spec/migrations/20211018152654_schedule_remove_duplicate_vulnerabilities_findings3_spec.rb'
+ - 'spec/migrations/20211110143306_add_not_null_constraint_to_security_findings_uuid_spec.rb'
+ - 'spec/migrations/20211116111644_schedule_remove_occurrence_pipelines_and_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/migrations/20211207125331_remove_jobs_for_recalculate_vulnerabilities_occurrences_uuid_spec.rb'
+ - 'spec/migrations/20211210140629_encrypt_static_object_token_spec.rb'
+ - 'spec/migrations/20211217174331_mark_recalculate_finding_signatures_as_completed_spec.rb'
+ - 'spec/migrations/20220107064845_populate_vulnerability_reads_spec.rb'
+ - 'spec/migrations/20220202105733_delete_service_template_records_spec.rb'
+ - 'spec/migrations/20220222192524_create_not_null_constraint_releases_tag_spec.rb'
+ - 'spec/migrations/20220222192525_remove_null_releases_spec.rb'
+ - 'spec/migrations/20220309084954_remove_leftover_external_pull_request_deletions_spec.rb'
+ - 'spec/migrations/20220322132242_update_pages_onboarding_state_spec.rb'
+ - 'spec/migrations/20220329175119_remove_leftover_ci_job_artifact_deletions_spec.rb'
+ - 'spec/models/analytics/cycle_analytics/aggregation_spec.rb'
+ - 'spec/models/concerns/loose_index_scan_spec.rb'
+ - 'spec/models/dependency_proxy/blob_spec.rb'
+ - 'spec/models/dependency_proxy/manifest_spec.rb'
+ - 'spec/models/dependency_proxy/registry_spec.rb'
+ - 'spec/models/design_management/action_spec.rb'
+ - 'spec/models/design_management/design_action_spec.rb'
+ - 'spec/models/design_management/design_collection_spec.rb'
+ - 'spec/models/design_management/version_spec.rb'
+ - 'spec/models/integrations/chat_message/pipeline_message_spec.rb'
+ - 'spec/models/integrations/datadog_spec.rb'
+ - 'spec/models/packages/build_info_spec.rb'
+ - 'spec/models/packages/composer/cache_file_spec.rb'
+ - 'spec/models/packages/composer/metadatum_spec.rb'
+ - 'spec/models/packages/debian/publication_spec.rb'
+ - 'spec/models/packages/dependency_link_spec.rb'
+ - 'spec/models/packages/dependency_spec.rb'
+ - 'spec/models/packages/maven/metadatum_spec.rb'
+ - 'spec/models/packages/npm_spec.rb'
+ - 'spec/models/packages/package_file_build_info_spec.rb'
+ - 'spec/models/packages/package_file_spec.rb'
+ - 'spec/models/packages/package_spec.rb'
+ - 'spec/models/packages/pypi/metadatum_spec.rb'
+ - 'spec/models/packages/rpm/metadatum_spec.rb'
+ - 'spec/models/packages/rpm/repository_file_spec.rb'
+ - 'spec/models/packages/rubygems/metadatum_spec.rb'
+ - 'spec/models/packages/tag_spec.rb'
+ - 'spec/models/product_analytics_event_spec.rb'
+ - 'spec/policies/design_management/design_policy_spec.rb'
+ - 'spec/requests/api/composer_packages_spec.rb'
+ - 'spec/requests/api/conan_project_packages_spec.rb'
+ - 'spec/requests/api/debian_group_packages_spec.rb'
+ - 'spec/requests/api/debian_project_packages_spec.rb'
+ - 'spec/requests/api/feature_flags_spec.rb'
+ - 'spec/requests/api/graphql/ci/ci_cd_setting_spec.rb'
+ - 'spec/requests/api/graphql/ci/groups_spec.rb'
+ - 'spec/requests/api/graphql/ci/jobs_spec.rb'
+ - 'spec/requests/api/graphql/ci/runner_web_url_edge_spec.rb'
+ - 'spec/requests/api/graphql/ci/runners_spec.rb'
+ - 'spec/requests/api/graphql/ci/stages_spec.rb'
+ - 'spec/requests/api/graphql/ci/template_spec.rb'
+ - 'spec/requests/api/graphql/container_repository/container_repository_details_spec.rb'
+ - 'spec/requests/api/graphql/group/container_repositories_spec.rb'
+ - 'spec/requests/api/graphql/group/dependency_proxy_blobs_spec.rb'
+ - 'spec/requests/api/graphql/group/dependency_proxy_group_setting_spec.rb'
+ - 'spec/requests/api/graphql/group/dependency_proxy_image_ttl_policy_spec.rb'
+ - 'spec/requests/api/graphql/group/dependency_proxy_manifests_spec.rb'
+ - 'spec/requests/api/graphql/issue_status_counts_spec.rb'
+ - 'spec/requests/api/graphql/multiplexed_queries_spec.rb'
+ - 'spec/requests/api/graphql/mutations/design_management/move_spec.rb'
+ - 'spec/requests/api/graphql/mutations/design_management/upload_spec.rb'
+ - 'spec/requests/api/graphql/packages/composer_spec.rb'
+ - 'spec/requests/api/graphql/packages/conan_spec.rb'
+ - 'spec/requests/api/graphql/packages/helm_spec.rb'
+ - 'spec/requests/api/graphql/packages/maven_spec.rb'
+ - 'spec/requests/api/graphql/packages/nuget_spec.rb'
+ - 'spec/requests/api/graphql/packages/package_spec.rb'
+ - 'spec/requests/api/graphql/packages/pypi_spec.rb'
+ - 'spec/requests/api/graphql/project/alert_management/alert_status_counts_spec.rb'
+ - 'spec/requests/api/graphql/project/alert_management/alerts_spec.rb'
+ - 'spec/requests/api/graphql/project/alert_management/integrations_spec.rb'
+ - 'spec/requests/api/graphql/project/container_expiration_policy_spec.rb'
+ - 'spec/requests/api/graphql/project/container_repositories_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/grafana_integration_spec.rb'
+ - 'spec/requests/api/graphql/project/jobs_spec.rb'
+ - 'spec/requests/api/graphql/project/packages_cleanup_policy_spec.rb'
+ - 'spec/requests/api/graphql/project/repository/blobs_spec.rb'
+ - 'spec/requests/api/graphql/project/repository_spec.rb'
+ - 'spec/requests/api/graphql/project/tree/tree_spec.rb'
+ - 'spec/requests/api/graphql_spec.rb'
+ - 'spec/requests/api/group_debian_distributions_spec.rb'
+ - 'spec/requests/api/helm_packages_spec.rb'
+ - 'spec/requests/api/maven_packages_spec.rb'
+ - 'spec/requests/api/nuget_group_packages_spec.rb'
+ - 'spec/requests/api/nuget_project_packages_spec.rb'
+ - 'spec/requests/api/project_debian_distributions_spec.rb'
+ - 'spec/requests/api/pypi_packages_spec.rb'
+ - 'spec/requests/api/rpm_project_packages_spec.rb'
+ - 'spec/requests/lfs_http_spec.rb'
+ - 'spec/rubocop/cop/migration/complex_indexes_require_name_spec.rb'
+ - 'spec/rubocop/cop/migration/refer_to_index_by_name_spec.rb'
+ - 'spec/rubocop/formatter/todo_formatter_spec.rb'
+ - 'spec/scripts/lib/glfm/parse_examples_spec.rb'
+ - 'spec/scripts/lib/glfm/shared_spec.rb'
+ - 'spec/scripts/lib/glfm/update_example_snapshots_spec.rb'
+ - 'spec/scripts/lib/glfm/verify_all_generated_files_are_up_to_date_spec.rb'
+ - 'spec/scripts/trigger-build_spec.rb'
+ - 'spec/serializers/impersonation_access_token_entity_spec.rb'
+ - 'spec/serializers/impersonation_access_token_serializer_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/artifacts_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/custom_config_content_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/custom_yaml_tags_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/limit_active_jobs_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/parallel_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/pre_post_stages_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/rate_limit_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/rules_spec.rb'
+ - 'spec/services/ci/create_pipeline_service/tags_spec.rb'
+ - 'spec/services/ci/job_token_scope/add_project_service_spec.rb'
+ - 'spec/services/ci/job_token_scope/remove_project_service_spec.rb'
+ - 'spec/services/ci/pipeline_schedules/calculate_next_run_service_spec.rb'
+ - 'spec/services/ci/process_build_service_spec.rb'
+ - 'spec/services/clusters/kubernetes/create_or_update_service_account_service_spec.rb'
+ - 'spec/services/commits/commit_patch_service_spec.rb'
+ - 'spec/services/dependency_proxy/auth_token_service_spec.rb'
+ - 'spec/services/dependency_proxy/find_cached_manifest_service_spec.rb'
+ - 'spec/services/dependency_proxy/head_manifest_service_spec.rb'
+ - 'spec/services/dependency_proxy/request_token_service_spec.rb'
+ - 'spec/services/design_management/copy_design_collection/copy_service_spec.rb'
+ - 'spec/services/design_management/copy_design_collection/queue_service_spec.rb'
+ - 'spec/services/design_management/delete_designs_service_spec.rb'
+ - 'spec/services/design_management/move_designs_service_spec.rb'
+ - 'spec/services/design_management/save_designs_service_spec.rb'
+ - 'spec/services/draft_notes/create_service_spec.rb'
+ - 'spec/services/draft_notes/destroy_service_spec.rb'
+ - 'spec/services/draft_notes/publish_service_spec.rb'
+ - 'spec/services/groups/auto_devops_service_spec.rb'
+ - 'spec/services/labels/available_labels_service_spec.rb'
+ - 'spec/services/merge_requests/build_service_spec.rb'
+ - 'spec/services/milestones/update_service_spec.rb'
+ - 'spec/services/packages/cleanup/execute_policy_service_spec.rb'
+ - 'spec/services/packages/cleanup/update_policy_service_spec.rb'
+ - 'spec/services/packages/composer/composer_json_service_spec.rb'
+ - 'spec/services/packages/composer/create_package_service_spec.rb'
+ - 'spec/services/packages/composer/version_parser_service_spec.rb'
+ - 'spec/services/packages/conan/create_package_file_service_spec.rb'
+ - 'spec/services/packages/conan/create_package_service_spec.rb'
+ - 'spec/services/packages/create_dependency_service_spec.rb'
+ - 'spec/services/packages/create_event_service_spec.rb'
+ - 'spec/services/packages/create_package_file_service_spec.rb'
+ - 'spec/services/packages/debian/extract_changes_metadata_service_spec.rb'
+ - 'spec/services/packages/debian/extract_deb_metadata_service_spec.rb'
+ - 'spec/services/packages/debian/extract_metadata_service_spec.rb'
+ - 'spec/services/packages/debian/parse_debian822_service_spec.rb'
+ - 'spec/services/packages/debian/process_changes_service_spec.rb'
+ - 'spec/services/packages/debian/process_package_file_service_spec.rb'
+ - 'spec/services/packages/helm/extract_file_metadata_service_spec.rb'
+ - 'spec/services/packages/helm/process_file_service_spec.rb'
+ - 'spec/services/packages/maven/create_package_service_spec.rb'
+ - 'spec/services/packages/maven/find_or_create_package_service_spec.rb'
+ - 'spec/services/packages/npm/create_package_service_spec.rb'
+ - 'spec/services/packages/npm/create_tag_service_spec.rb'
+ - 'spec/services/packages/nuget/create_dependency_service_spec.rb'
+ - 'spec/services/packages/pypi/create_package_service_spec.rb'
+ - 'spec/services/packages/remove_tag_service_spec.rb'
+ - 'spec/services/packages/rpm/parse_package_service_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/build_filelist_xml_service_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/build_other_xml_service_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/build_primary_xml_service_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/update_xml_service_spec.rb'
+ - 'spec/services/packages/rubygems/create_dependencies_service_spec.rb'
+ - 'spec/services/packages/rubygems/create_gemspec_service_spec.rb'
+ - 'spec/services/packages/rubygems/dependency_resolver_service_spec.rb'
+ - 'spec/services/packages/rubygems/metadata_extraction_service_spec.rb'
+ - 'spec/services/packages/terraform_module/create_package_service_spec.rb'
+ - 'spec/services/packages/update_package_file_service_spec.rb'
+ - 'spec/services/packages/update_tags_service_spec.rb'
+ - 'spec/services/projects/auto_devops/disable_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_download_link_list_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_download_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_import_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_link_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_object_download_list_service_spec.rb'
+ - 'spec/services/projects/update_service_spec.rb'
+ - 'spec/services/protected_branches/cache_service_spec.rb'
+ - 'spec/services/service_desk_settings/update_service_spec.rb'
+ - 'spec/services/submodules/update_service_spec.rb'
+ - 'spec/services/wikis/create_attachment_service_spec.rb'
+ - 'spec/support/fips.rb'
+ - 'spec/support/generate-seed-repo-rb'
+ - 'spec/support/graphql/fake_query_type.rb'
+ - 'spec/support/helpers/fake_webauthn_device.rb'
+ - 'spec/support/helpers/features/access_token_helpers.rb'
+ - 'spec/support/helpers/features/iteration_helpers.rb'
+ - 'spec/support/helpers/features/list_rows_helpers.rb'
+ - 'spec/support/helpers/features/responsive_table_helpers.rb'
+ - 'spec/support/helpers/features/two_factor_helpers.rb'
+ - 'spec/support/helpers/lfs_http_helpers.rb'
+ - 'spec/support/redis.rb'
+ - 'spec/support/shared_examples/controllers/create_notes_rate_limit_shared_examples.rb'
+ - 'spec/support/shared_examples/controllers/rate_limited_endpoint_shared_examples.rb'
+ - 'spec/support/shared_examples/controllers/snowplow_event_tracking_examples.rb'
+ - 'spec/support/shared_examples/controllers/unique_hll_events_examples.rb'
+ - 'spec/support/shared_examples/graphql/projects/services_resolver_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/import_export/attributes_permitter_shared_examples.rb'
+ - 'spec/support/shared_examples/models/concerns/counter_attribute_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/rack_attack_shared_examples.rb'
+ - 'spec/support/shared_examples/serializers/environment_serializer_shared_examples.rb'
+ - 'spec/support/view_component.rb'
+ - 'spec/tasks/rubocop_rake_spec.rb'
+ - 'spec/uploaders/dependency_proxy/file_uploader_spec.rb'
+ - 'spec/uploaders/packages/composer/cache_uploader_spec.rb'
+ - 'spec/uploaders/packages/debian/component_file_uploader_spec.rb'
+ - 'spec/uploaders/packages/debian/distribution_release_file_uploader_spec.rb'
+ - 'spec/uploaders/packages/package_file_uploader_spec.rb'
+ - 'spec/uploaders/packages/rpm/repository_file_uploader_spec.rb'
+ - 'spec/views/ci/status/_icon.html.haml_spec.rb'
+ - 'spec/views/notify/change_in_merge_request_draft_status_email.text.erb_spec.rb'
+ - 'spec/views/notify/pipeline_failed_email.text.erb_spec.rb'
+ - 'spec/views/notify/push_to_merge_request_email.text.haml_spec.rb'
+ - 'spec/views/projects/pages/new.html.haml_spec.rb'
+ - 'spec/views/shared/_label_row.html.haml_spec.rb'
+ - 'spec/views/shared/ssh_keys/_key_delete.html.haml_spec.rb'
+ - 'spec/views/shared/wikis/_sidebar.html.haml_spec.rb'
+ - 'spec/workers/auto_devops/disable_worker_spec.rb'
+ - 'spec/workers/gitlab/phabricator_import/base_worker_spec.rb'
+ - 'spec/workers/gitlab/phabricator_import/import_tasks_worker_spec.rb'
+ - 'spec/workers/integrations/execute_worker_spec.rb'
+ - 'spec/workers/partition_creation_worker_spec.rb'
+ - 'spec/workers/projects/delete_branch_worker_spec.rb'
+ - 'spec/workers/web_hook_worker_spec.rb'
+ - 'tooling/danger/product_intelligence.rb'
+ - 'tooling/danger/suggestor.rb'
+ - 'tooling/docs/deprecation_handling.rb'
diff --git a/.rubocop_todo/layout/line_length.yml b/.rubocop_todo/layout/line_length.yml
index fab9438da06..9e1c02129fc 100644
--- a/.rubocop_todo/layout/line_length.yml
+++ b/.rubocop_todo/layout/line_length.yml
@@ -15,7 +15,6 @@ Layout/LineLength:
- 'app/controllers/application_controller.rb'
- 'app/controllers/concerns/access_tokens_actions.rb'
- 'app/controllers/concerns/analytics/cycle_analytics/stage_actions.rb'
- - 'app/controllers/concerns/clientside_preview_csp.rb'
- 'app/controllers/concerns/confirm_email_warning.rb'
- 'app/controllers/concerns/integrations/actions.rb'
- 'app/controllers/concerns/issuable_actions.rb'
@@ -164,7 +163,6 @@ Layout/LineLength:
- 'app/graphql/resolvers/concerns/time_frame_arguments.rb'
- 'app/graphql/resolvers/container_repository_tags_resolver.rb'
- 'app/graphql/resolvers/project_merge_requests_resolver.rb'
- - 'app/graphql/resolvers/projects_resolver.rb'
- 'app/graphql/resolvers/user_discussions_count_resolver.rb'
- 'app/graphql/types/admin/sidekiq_queues/delete_jobs_response_type.rb'
- 'app/graphql/types/alert_management/prometheus_integration_type.rb'
@@ -244,7 +242,6 @@ Layout/LineLength:
- 'app/helpers/ide_helper.rb'
- 'app/helpers/import_helper.rb'
- 'app/helpers/in_product_marketing_helper.rb'
- - 'app/helpers/invite_members_helper.rb'
- 'app/helpers/issuables_helper.rb'
- 'app/helpers/jira_connect_helper.rb'
- 'app/helpers/labels_helper.rb'
@@ -291,7 +288,6 @@ Layout/LineLength:
- 'app/models/analytics/cycle_analytics/aggregation.rb'
- 'app/models/analytics/cycle_analytics/issue_stage_event.rb'
- 'app/models/analytics/cycle_analytics/merge_request_stage_event.rb'
- - 'app/models/analytics/cycle_analytics/project_stage.rb'
- 'app/models/analytics/cycle_analytics/stage_event_hash.rb'
- 'app/models/application_record.rb'
- 'app/models/application_setting.rb'
@@ -306,7 +302,6 @@ Layout/LineLength:
- 'app/models/ci/runner.rb'
- 'app/models/ci/unit_test.rb'
- 'app/models/clusters/agent.rb'
- - 'app/models/clusters/applications/cert_manager.rb'
- 'app/models/clusters/applications/knative.rb'
- 'app/models/clusters/applications/prometheus.rb'
- 'app/models/clusters/cluster.rb'
@@ -326,7 +321,6 @@ Layout/LineLength:
- 'app/models/concerns/enums/vulnerability.rb'
- 'app/models/concerns/fast_destroy_all.rb'
- 'app/models/concerns/group_descendant.rb'
- - 'app/models/concerns/id_in_ordered.rb'
- 'app/models/concerns/ignorable_columns.rb'
- 'app/models/concerns/iid_routes.rb'
- 'app/models/concerns/integrations/has_data_fields.rb'
@@ -552,7 +546,6 @@ Layout/LineLength:
- 'app/services/import/bitbucket_server_service.rb'
- 'app/services/import/github_service.rb'
- 'app/services/import/validate_remote_git_endpoint_service.rb'
- - 'app/services/issuable/import_csv/base_service.rb'
- 'app/services/issuable/process_assignees.rb'
- 'app/services/issuable_base_service.rb'
- 'app/services/issuable_links/create_service.rb'
@@ -728,7 +721,6 @@ Layout/LineLength:
- 'config/initializers/doorkeeper.rb'
- 'config/initializers/elastic_client_setup.rb'
- 'config/initializers/google_api_client.rb'
- - 'config/initializers/google_api_client_patch.rb'
- 'config/initializers/kaminari_active_record_relation_methods_with_limit.rb'
- 'config/initializers/pages_storage_check.rb'
- 'config/initializers/rails_host_authorization.rb'
@@ -755,47 +747,6 @@ Layout/LineLength:
- 'danger/roulette/Dangerfile'
- 'danger/vue_shared_documentation/Dangerfile'
- 'danger/z_metadata/Dangerfile'
- - 'db/migrate/20210604032738_create_dast_site_profiles_builds.rb'
- - 'db/migrate/20210604034354_add_dast_site_profile_id_fk_to_dast_site_profiles_builds.rb'
- - 'db/migrate/20210604051330_create_dast_scanner_profiles_builds.rb'
- - 'db/migrate/20210604051917_add_dast_scanner_profile_id_fk_to_dast_scanner_profiles_builds.rb'
- - 'db/migrate/20210604085600_rename_status_check_responses_approval_rule.rb'
- - 'db/migrate/20210609192728_add_status_check_foreign_key_to_external_status_check_id.rb'
- - 'db/migrate/20210609193101_add_status_check_foreign_key_to_protected_branch_id.rb'
- - 'db/migrate/20210614143954_add_unique_index_for_helm_packages.rb'
- - 'db/migrate/20210617161348_cascade_delete_freeze_periods.rb'
- - 'db/migrate/20210622135221_add_foreign_key_for_environment_id_to_environments.rb'
- - 'db/migrate/20210623163342_add_index_to_compliance_management_frameworks_pipeline_configuration.rb'
- - 'db/migrate/20210630224625_generate_customers_dot_jwt_signing_key.rb'
- - 'db/migrate/20210705130919_create_container_repos_on_exp_cleanup_status_project_id_start_date_index.rb'
- - 'db/migrate/20210706084713_add_devops_adoption_snapshots_index.rb'
- - 'db/migrate/20210707151536_create_vulnerability_finding_evidence_sources.rb'
- - 'db/migrate/20210707171536_create_vulnerability_finding_evidence_assets.rb'
- - 'db/migrate/20210707181536_create_vulnerability_finding_evidence_supporting_messages.rb'
- - 'db/migrate/20210709085759_index_batched_migration_jobs_by_max_value.rb'
- - 'db/migrate/20210713070842_update_merge_request_cleanup_schedules_scheduled_at_index.rb'
- - 'db/migrate/20210713211008_create_banned_users.rb'
- - 'db/migrate/20210714043818_add_index_for_label_applied_to_issuable_sla.rb'
- - 'db/migrate/20210721174441_update_escalation_rule_fk_for_pending_alert_escalations.rb'
- - 'db/migrate/20210722074339_add_xor_check_constraint_for_escalation_rules.rb'
- - 'db/migrate/20210729202143_create_incident_management_issuable_escalation_statuses.rb'
- - 'db/migrate/20210730102952_add_stage_hash_fk_to_project_stages.rb'
- - 'db/migrate/20210730103808_add_stage_hash_fk_to_group_stages.rb'
- - 'db/migrate/20210803110920_add_unique_index_to_vulnerability_flags_table.rb'
- - 'db/migrate/20210804150320_create_base_work_item_types.rb'
- - 'db/migrate/20210804200114_create_customer_relations_organizations.rb'
- - 'db/migrate/20210804202057_add_tmp_index_approval_project_rules_scanners.rb'
- - 'db/migrate/20210811120204_create_customer_relations_contacts.rb'
- - 'db/migrate/20210811193033_add_unique_index_to_vulnerability_finding_links.rb'
- - 'db/migrate/20210812171704_create_project_ci_feature_usages.rb'
- - 'db/migrate/20210817130415_add_project_id_name_version_id_to_npm_packages.rb'
- - 'db/migrate/20210819120243_add_throttle_files_api_columns.rb'
- - 'db/migrate/20210819152723_remove_tmp_index_approval_project_rules_scanners.rb'
- - 'db/migrate/20210819185500_create_external_audit_event_destinations_table.rb'
- - 'db/migrate/20210820171834_add_foreign_keys_for_pending_issue_escalations.rb'
- - 'db/migrate/20210823213417_create_dependency_proxy_image_ttl_group_policies.rb'
- - 'db/migrate/20210826124311_add_index_to_error_tracking_error.rb'
- - 'db/migrate/20210826170902_add_throttle_unauthenticated_api_columns.rb'
- 'db/migrate/20210830085837_add_throttle_authenticated_git_lfs_columns.rb'
- 'db/migrate/20210831203408_upsert_base_work_item_types.rb'
- 'db/migrate/20210908140437_add_sidekiq_limits_to_application_settings.rb'
@@ -858,39 +809,6 @@ Layout/LineLength:
- 'db/migrate/20220310101118_update_holder_name_limit.rb'
- 'db/migrate/20220314184209_add_group_fk_to_protected_environment_approval_rules.rb'
- 'db/migrate/20220314204009_add_approval_rule_fk_to_deployment_approvals.rb'
- - 'db/post_migrate/20210606143426_add_index_for_container_registry_access_level.rb'
- - 'db/post_migrate/20210611080951_fix_missing_traversal_ids.rb'
- - 'db/post_migrate/20210615234935_fix_batched_migrations_old_format_job_arguments.rb'
- - 'db/post_migrate/20210621111747_add_ci_artifacts_devops_adoption_index.rb'
- - 'db/post_migrate/20210622041846_finalize_push_event_payloads_bigint_conversion.rb'
- - 'db/post_migrate/20210622045705_finalize_events_bigint_conversion.rb'
- - 'db/post_migrate/20210622141148_schedule_delete_orphaned_deployments.rb'
- - 'db/post_migrate/20210629101712_remove_deprecated_modsecurity_columns.rb'
- - 'db/post_migrate/20210701033622_finalize_ci_builds_needs_bigint_conversion.rb'
- - 'db/post_migrate/20210701111909_backfill_issues_upvotes_count.rb'
- - 'db/post_migrate/20210701141346_finalize_ci_builds_stage_id_bigint_conversion.rb'
- - 'db/post_migrate/20210706212710_finalize_ci_job_artifacts_bigint_conversion.rb'
- - 'db/post_migrate/20210707210916_finalize_ci_stages_bigint_conversion.rb'
- - 'db/post_migrate/20210708011426_finalize_ci_builds_metadata_bigint_conversion.rb'
- - 'db/post_migrate/20210713042153_finalize_ci_sources_pipelines_bigint_conversion.rb'
- - 'db/post_migrate/20210714015537_finalize_ci_build_trace_chunks_bigint_conversion.rb'
- - 'db/post_migrate/20210721174521_add_non_null_constraint_for_escalation_rule_on_pending_alert_escalations.rb'
- - 'db/post_migrate/20210722155635_finalize_convert_geo_job_artifact_deleted_events_bigint.rb'
- - 'db/post_migrate/20210729163312_re_schedule_latest_pipeline_id_population_with_all_security_related_artifact_types.rb'
- - 'db/post_migrate/20210729192959_drop_ci_test_case_failures_table.rb'
- - 'db/post_migrate/20210731132939_backfill_stage_event_hash.rb'
- - 'db/post_migrate/20210802043253_finalize_push_event_payloads_bigint_conversion_3.rb'
- - 'db/post_migrate/20210802131812_finalize_convert_deployments_bigint.rb'
- - 'db/post_migrate/20210804150624_remove_cluster_image_scanning_from_approval_project_rules.rb'
- - 'db/post_migrate/20210804153307_prepare_indexes_for_tagging_bigint_conversion.rb'
- - 'db/post_migrate/20210805131510_finalize_ci_builds_runner_session_bigint_conversion.rb'
- - 'db/post_migrate/20210806131706_finalize_taggins_bigint_conversion.rb'
- - 'db/post_migrate/20210809123658_orphaned_invite_tokens_cleanup.rb'
- - 'db/post_migrate/20210809143931_finalize_job_id_conversion_to_bigint_for_ci_job_artifacts.rb'
- - 'db/post_migrate/20210811122206_update_external_project_bots.rb'
- - 'db/post_migrate/20210813151908_replace_external_wiki_triggers.rb'
- - 'db/post_migrate/20210824174615_prepare_ci_builds_metadata_and_ci_build_async_indexes.rb'
- - 'db/post_migrate/20210825193652_backfill_cadence_id_for_boards_scoped_to_iteration.rb'
- 'db/post_migrate/20210901184511_prepare_async_indexes_for_ci_builds.rb'
- 'db/post_migrate/20210907211557_finalize_ci_builds_bigint_conversion.rb'
- 'db/post_migrate/20210923135909_remove_delayed_project_removal_from_namespaces.rb'
@@ -997,9 +915,7 @@ Layout/LineLength:
- 'ee/app/controllers/ee/repositories/git_http_client_controller.rb'
- 'ee/app/controllers/ee/repositories/git_http_controller.rb'
- 'ee/app/controllers/ee/repositories/lfs_api_controller.rb'
- - 'ee/app/controllers/groups/analytics/cycle_analytics/stages_controller.rb'
- 'ee/app/controllers/groups/analytics/cycle_analytics/summary_controller.rb'
- - 'ee/app/controllers/groups/analytics/cycle_analytics/value_streams_controller.rb'
- 'ee/app/controllers/groups/analytics/productivity_analytics_controller.rb'
- 'ee/app/controllers/groups/hooks_controller.rb'
- 'ee/app/controllers/groups/ldap_settings_controller.rb'
@@ -1035,7 +951,6 @@ Layout/LineLength:
- 'ee/app/graphql/mutations/boards/scoped_issue_board_arguments.rb'
- 'ee/app/graphql/mutations/compliance_management/frameworks/destroy.rb'
- 'ee/app/graphql/mutations/concerns/mutations/shared_epic_arguments.rb'
- - 'ee/app/graphql/mutations/dast/profiles/create.rb'
- 'ee/app/graphql/mutations/dast/profiles/update.rb'
- 'ee/app/graphql/mutations/dast_scanner_profiles/create.rb'
- 'ee/app/graphql/mutations/dast_scanner_profiles/update.rb'
@@ -1129,7 +1044,6 @@ Layout/LineLength:
- 'ee/app/helpers/ee/search_helper.rb'
- 'ee/app/helpers/ee/subscribable_banner_helper.rb'
- 'ee/app/helpers/ee/trial_helper.rb'
- - 'ee/app/helpers/ee/users/callouts_helper.rb'
- 'ee/app/helpers/epics_helper.rb'
- 'ee/app/helpers/gitlab_subscriptions/upcoming_reconciliation_helper.rb'
- 'ee/app/helpers/groups/feature_discovery_moments_helper.rb'
@@ -1142,7 +1056,6 @@ Layout/LineLength:
- 'ee/app/helpers/projects/security/dast_profiles_helper.rb'
- 'ee/app/helpers/projects/security/discover_helper.rb'
- 'ee/app/helpers/push_rules_helper.rb'
- - 'ee/app/helpers/trial_status_widget_helper.rb'
- 'ee/app/helpers/vulnerabilities_helper.rb'
- 'ee/app/mailers/ee/emails/profile.rb'
- 'ee/app/mailers/ee/preview/notify_preview.rb'
@@ -1170,7 +1083,6 @@ Layout/LineLength:
- 'ee/app/models/dast/site_profile_secret_variable.rb'
- 'ee/app/models/dora/lead_time_for_changes_metric.rb'
- 'ee/app/models/ee/alert_management/alert.rb'
- - 'ee/app/models/ee/analytics/cycle_analytics/stage_event_hash.rb'
- 'ee/app/models/ee/application_setting.rb'
- 'ee/app/models/ee/ci/build.rb'
- 'ee/app/models/ee/ci/daily_build_group_report_result.rb'
@@ -1286,7 +1198,6 @@ Layout/LineLength:
- 'ee/app/services/dora/aggregate_metrics_service.rb'
- 'ee/app/services/ee/allowed_email_domains/update_service.rb'
- 'ee/app/services/ee/analytics/cycle_analytics/stages/base_service.rb'
- - 'ee/app/services/ee/analytics/cycle_analytics/stages/list_service.rb'
- 'ee/app/services/ee/application_settings/update_service.rb'
- 'ee/app/services/ee/applications/create_service.rb'
- 'ee/app/services/ee/boards/base_service.rb'
@@ -1306,7 +1217,6 @@ Layout/LineLength:
- 'ee/app/services/ee/issues/clone_service.rb'
- 'ee/app/services/ee/merge_requests/merge_base_service.rb'
- 'ee/app/services/ee/merge_requests/refresh_service.rb'
- - 'ee/app/services/ee/personal_access_tokens/create_service.rb'
- 'ee/app/services/ee/personal_access_tokens/revoke_service.rb'
- 'ee/app/services/ee/projects/create_from_template_service.rb'
- 'ee/app/services/ee/projects/create_service.rb'
@@ -1348,7 +1258,6 @@ Layout/LineLength:
- 'ee/app/services/incident_management/oncall_rotations/edit_service.rb'
- 'ee/app/services/incident_management/oncall_schedules/update_service.rb'
- 'ee/app/services/incident_management/pending_escalations/process_service.rb'
- - 'ee/app/services/issues/create_from_vulnerability_data_service.rb'
- 'ee/app/services/iterations/cadences/create_iterations_in_advance_service.rb'
- 'ee/app/services/iterations/cadences/create_service.rb'
- 'ee/app/services/iterations/cadences/destroy_service.rb'
@@ -1620,7 +1529,6 @@ Layout/LineLength:
- 'ee/spec/controllers/ee/projects/jobs_controller_spec.rb'
- 'ee/spec/controllers/ee/search_controller_spec.rb'
- 'ee/spec/controllers/ee/uploads_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/audit_events_controller_spec.rb'
- 'ee/spec/controllers/groups/epic_issues_controller_spec.rb'
@@ -1801,7 +1709,6 @@ Layout/LineLength:
- 'ee/spec/frontend/fixtures/epic.rb'
- 'ee/spec/frontend/fixtures/on_demand_dast_scans.rb'
- 'ee/spec/frontend/fixtures/project_quality_summary.rb'
- - 'ee/spec/frontend/fixtures/projects.rb'
- 'ee/spec/graphql/ee/mutations/boards/lists/create_spec.rb'
- 'ee/spec/graphql/ee/resolvers/board_list_issues_resolver_spec.rb'
- 'ee/spec/graphql/ee/resolvers/project_issues_resolver_spec.rb'
@@ -2028,7 +1935,6 @@ Layout/LineLength:
- 'ee/spec/lib/gitlab/ci/reports/dependency_list/dependency_spec.rb'
- 'ee/spec/lib/gitlab/ci/reports/dependency_list/report_spec.rb'
- 'ee/spec/lib/gitlab/ci/reports/license_scanning/dependency_spec.rb'
- - 'ee/spec/lib/gitlab/ci/reports/license_scanning/report_spec.rb'
- 'ee/spec/lib/gitlab/ci/reports/security/finding_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/sast_gitlab_ci_yaml_spec.rb'
@@ -2111,12 +2017,10 @@ Layout/LineLength:
- 'ee/spec/mailers/emails/requirements_spec.rb'
- 'ee/spec/mailers/license_mailer_spec.rb'
- 'ee/spec/mailers/notify_spec.rb'
- - 'ee/spec/migrations/add_non_null_constraint_for_escalation_rule_on_pending_alert_escalations_spec.rb'
- 'ee/spec/migrations/drop_invalid_remediations_spec.rb'
- 'ee/spec/migrations/geo/migrate_ci_job_artifacts_to_separate_registry_spec.rb'
- 'ee/spec/migrations/geo/migrate_lfs_objects_to_separate_registry_spec.rb'
- 'ee/spec/migrations/geo/set_resync_flag_for_retried_projects_spec.rb'
- - 'ee/spec/migrations/remove_schedule_and_status_null_constraints_from_pending_escalations_alert_spec.rb'
- 'ee/spec/migrations/schedule_populate_test_reports_issue_id_spec.rb'
- 'ee/spec/migrations/schedule_requirements_migration_spec.rb'
- 'ee/spec/migrations/schedule_trace_expiry_removal_spec.rb'
@@ -2431,10 +2335,7 @@ Layout/LineLength:
- 'ee/spec/services/alert_management/process_prometheus_alert_service_spec.rb'
- 'ee/spec/services/analytics/cycle_analytics/consistency_check_service_spec.rb'
- 'ee/spec/services/analytics/cycle_analytics/data_loader_service_spec.rb'
- - 'ee/spec/services/analytics/cycle_analytics/stages/create_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/update_service_spec.rb'
- 'ee/spec/services/analytics/devops_adoption/enabled_namespaces/bulk_delete_service_spec.rb'
- 'ee/spec/services/analytics/devops_adoption/enabled_namespaces/bulk_find_or_create_service_spec.rb'
@@ -2499,7 +2400,6 @@ Layout/LineLength:
- 'ee/spec/services/ee/issuable/common_system_notes_service_spec.rb'
- 'ee/spec/services/ee/issue_links/create_service_spec.rb'
- 'ee/spec/services/ee/issues/clone_service_spec.rb'
- - 'ee/spec/services/ee/issues/create_from_vulnerability_data_service_spec.rb'
- 'ee/spec/services/ee/issues/create_service_spec.rb'
- 'ee/spec/services/ee/issues/move_service_spec.rb'
- 'ee/spec/services/ee/issues/update_service_spec.rb'
@@ -2835,7 +2735,6 @@ Layout/LineLength:
- 'lib/api/helpers/projects_helpers.rb'
- 'lib/api/helpers/related_resources_helpers.rb'
- 'lib/api/helpers/snippets_helpers.rb'
- - 'lib/api/helpers/users_helpers.rb'
- 'lib/api/helpers/wikis_helpers.rb'
- 'lib/api/internal/base.rb'
- 'lib/api/internal/kubernetes.rb'
@@ -2917,7 +2816,6 @@ Layout/LineLength:
- 'lib/bulk_imports/groups/loaders/group_loader.rb'
- 'lib/bulk_imports/projects/pipelines/project_pipeline.rb'
- 'lib/bulk_imports/projects/pipelines/repository_pipeline.rb'
- - 'lib/bulk_imports/projects/transformers/project_attributes_transformer.rb'
- 'lib/container_registry/base_client.rb'
- 'lib/declarative_enum.rb'
- 'lib/error_tracking/collector/payload_validator.rb'
@@ -3003,7 +2901,6 @@ Layout/LineLength:
- 'lib/gitlab/ci/parsers/coverage/sax_document.rb'
- 'lib/gitlab/ci/parsers/security/common.rb'
- 'lib/gitlab/ci/parsers/security/validators/schema_validator.rb'
- - 'lib/gitlab/ci/pipeline/chain/cancel_pending_pipelines.rb'
- 'lib/gitlab/ci/pipeline/chain/create_cross_database_associations.rb'
- 'lib/gitlab/ci/pipeline/chain/template_usage.rb'
- 'lib/gitlab/ci/pipeline/chain/validate/abilities.rb'
@@ -3316,13 +3213,11 @@ Layout/LineLength:
- 'qa/qa/ee/page/project/secure/license_compliance.rb'
- 'qa/qa/ee/page/project/secure/security_dashboard.rb'
- 'qa/qa/ee/page/project/secure/show.rb'
- - 'qa/qa/ee/resource/license.rb'
- 'qa/qa/flow/sign_up.rb'
- 'qa/qa/git/repository.rb'
- 'qa/qa/page/component/ci_badge_link.rb'
- 'qa/qa/page/component/issuable/sidebar.rb'
- 'qa/qa/page/dashboard/snippet/index.rb'
- - 'qa/qa/page/dashboard/todos.rb'
- 'qa/qa/page/group/settings/group_deploy_tokens.rb'
- 'qa/qa/page/group/settings/package_registries.rb'
- 'qa/qa/page/merge_request/new.rb'
@@ -3340,7 +3235,6 @@ Layout/LineLength:
- 'qa/qa/runtime/api/repository_storage_moves.rb'
- 'qa/qa/runtime/env.rb'
- 'qa/qa/runtime/feature.rb'
- - 'qa/qa/runtime/fixtures.rb'
- 'qa/qa/runtime/ip_address.rb'
- 'qa/qa/runtime/search.rb'
- 'qa/qa/scenario/bootable.rb'
@@ -3387,7 +3281,6 @@ Layout/LineLength:
- 'qa/qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/merge_request/revert/reverting_merge_request_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/merge_request/squash_merge_request_spec.rb'
- - 'qa/qa/specs/features/browser_ui/3_create/merge_request/suggestions/custom_commit_suggestion_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/repository/add_list_delete_branches_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/repository/branch_with_unusual_name_spec.rb'
@@ -3418,7 +3311,6 @@ Layout/LineLength:
- 'qa/qa/specs/features/browser_ui/3_create/web_ide/open_fork_in_web_ide_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/web_ide/open_web_ide_from_diff_tab_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/web_ide/review_merge_request_spec.rb'
- - 'qa/qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/pipeline/create_and_process_pipeline_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/pipeline/include_local_config_file_paths_with_wildcard_spec.rb'
@@ -3431,7 +3323,6 @@ Layout/LineLength:
- 'qa/qa/specs/features/browser_ui/4_verify/pipeline/update_ci_file_with_pipeline_editor_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/runner/register_runner_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/testing/view_code_coverage_spec.rb'
- - 'qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_omnibus_spec.rb'
- 'qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_spec.rb'
- 'qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb'
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb'
@@ -3448,11 +3339,8 @@ Layout/LineLength:
- 'qa/qa/specs/features/ee/api/1_manage/user/minimal_access_user_spec.rb'
- 'qa/qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb'
- 'qa/qa/specs/features/ee/api/3_create/wiki/group_wiki_repository_storage_move_spec.rb'
- - 'qa/qa/specs/features/ee/api/7_configure/kubernetes/kubernetes_agent_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb'
- - 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/free_trial_spec.rb'
- - 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/purchase_storage_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/user_registration_billing_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/13_secure/enable_scanning_from_configuration_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/13_secure/license_compliance_spec.rb'
@@ -3530,7 +3418,6 @@ Layout/LineLength:
- 'scripts/api/cancel_pipeline.rb'
- 'scripts/api/get_job_id.rb'
- 'scripts/changed-feature-flags'
- - 'scripts/failed_tests.rb'
- 'scripts/flaky_examples/prune-old-flaky-examples'
- 'scripts/lint_templates_bash.rb'
- 'scripts/no-dir-check'
@@ -3540,7 +3427,6 @@ Layout/LineLength:
- 'scripts/security-harness'
- 'scripts/static-analysis'
- 'scripts/trigger-build.rb'
- - 'scripts/verify-tff-mapping'
- 'sidekiq_cluster/cli.rb'
- 'sidekiq_cluster/sidekiq_cluster.rb'
- 'spec/benchmarks/banzai_benchmark.rb'
@@ -3626,7 +3512,6 @@ Layout/LineLength:
- 'spec/controllers/projects/repositories_controller_spec.rb'
- 'spec/controllers/projects/runners_controller_spec.rb'
- 'spec/controllers/projects/service_desk_controller_spec.rb'
- - 'spec/controllers/projects/service_ping_controller_spec.rb'
- 'spec/controllers/projects/settings/ci_cd_controller_spec.rb'
- 'spec/controllers/projects/settings/operations_controller_spec.rb'
- 'spec/controllers/projects/settings/repository_controller_spec.rb'
@@ -3951,8 +3836,6 @@ Layout/LineLength:
- 'spec/graphql/mutations/release_asset_links/update_spec.rb'
- 'spec/graphql/mutations/releases/delete_spec.rb'
- 'spec/graphql/mutations/releases/update_spec.rb'
- - 'spec/graphql/mutations/saved_replies/create_spec.rb'
- - 'spec/graphql/mutations/saved_replies/update_spec.rb'
- 'spec/graphql/mutations/security/ci_configuration/configure_sast_spec.rb'
- 'spec/graphql/resolvers/admin/analytics/usage_trends/measurements_resolver_spec.rb'
- 'spec/graphql/resolvers/alert_management/alert_resolver_spec.rb'
@@ -4047,7 +3930,6 @@ Layout/LineLength:
- 'spec/helpers/nav/new_dropdown_helper_spec.rb'
- 'spec/helpers/notes_helper_spec.rb'
- 'spec/helpers/operations_helper_spec.rb'
- - 'spec/helpers/page_layout_helper_spec.rb'
- 'spec/helpers/profiles_helper_spec.rb'
- 'spec/helpers/projects/pipeline_helper_spec.rb'
- 'spec/helpers/projects/project_members_helper_spec.rb'
@@ -4266,7 +4148,6 @@ Layout/LineLength:
- 'spec/lib/gitlab/ci/parsers/security/common_spec.rb'
- 'spec/lib/gitlab/ci/parsers/security/validators/schema_validator_spec.rb'
- 'spec/lib/gitlab/ci/parsers/test/junit_spec.rb'
- - 'spec/lib/gitlab/ci/pipeline/chain/cancel_pending_pipelines_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/chain/ensure_resource_groups_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/chain/limit/deployments_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/chain/validate/external_spec.rb'
@@ -4641,12 +4522,6 @@ Layout/LineLength:
- 'spec/mailers/emails/releases_spec.rb'
- 'spec/mailers/emails/service_desk_spec.rb'
- 'spec/mailers/notify_spec.rb'
- - 'spec/migrations/20210610153556_delete_legacy_operations_feature_flags_spec.rb'
- - 'spec/migrations/2021061716138_cascade_delete_freeze_periods_spec.rb'
- - 'spec/migrations/20210713042000_fix_ci_sources_pipelines_index_names_spec.rb'
- - 'spec/migrations/20210722150102_operations_feature_flags_correct_flexible_rollout_values_spec.rb'
- - 'spec/migrations/20210805192450_update_trial_plans_ci_daily_pipeline_schedule_triggers_spec.rb'
- - 'spec/migrations/20210812013042_remove_duplicate_project_authorizations_spec.rb'
- 'spec/migrations/20210831203408_upsert_base_work_item_types_spec.rb'
- 'spec/migrations/20210907211557_finalize_ci_builds_bigint_conversion_spec.rb'
- 'spec/migrations/20210910194952_update_report_type_for_existing_approval_project_rules_spec.rb'
@@ -4668,22 +4543,14 @@ Layout/LineLength:
- 'spec/migrations/20220222192524_create_not_null_constraint_releases_tag_spec.rb'
- 'spec/migrations/20220309084954_remove_leftover_external_pull_request_deletions_spec.rb'
- 'spec/migrations/active_record/schema_spec.rb'
- - 'spec/migrations/add_upvotes_count_index_to_issues_spec.rb'
- 'spec/migrations/backfill_all_project_namespaces_spec.rb'
- - 'spec/migrations/backfill_cadence_id_for_boards_scoped_to_iteration_spec.rb'
- 'spec/migrations/backfill_project_namespaces_for_group_spec.rb'
- 'spec/migrations/cleanup_after_fixing_issue_when_admin_changed_primary_email_spec.rb'
- 'spec/migrations/finalize_project_namespaces_backfill_spec.rb'
- 'spec/migrations/fix_and_backfill_project_namespaces_for_projects_with_duplicate_name_spec.rb'
- - 'spec/migrations/fix_batched_migrations_old_format_job_arguments_spec.rb'
- - 'spec/migrations/re_schedule_latest_pipeline_id_population_with_all_security_related_artifact_types_spec.rb'
- 'spec/migrations/recreate_index_security_ci_builds_on_name_and_id_parser_features_spec.rb'
- 'spec/migrations/recreate_index_security_ci_builds_on_name_and_id_parser_with_new_features_spec.rb'
- - 'spec/migrations/remove_duplicate_dast_site_tokens_spec.rb'
- 'spec/migrations/remove_not_null_contraint_on_title_from_sprints_spec.rb'
- - 'spec/migrations/rename_services_to_integrations_spec.rb'
- - 'spec/migrations/replace_external_wiki_triggers_spec.rb'
- - 'spec/migrations/reset_severity_levels_to_new_default_spec.rb'
- 'spec/migrations/schedule_recalculate_vulnerability_finding_signatures_for_findings_spec.rb'
- 'spec/migrations/schedule_update_timelogs_null_spent_at_spec.rb'
- 'spec/migrations/update_invalid_member_states_spec.rb'
@@ -4692,7 +4559,6 @@ Layout/LineLength:
- 'spec/models/acts_as_taggable_on/tagging_spec.rb'
- 'spec/models/alert_management/alert_spec.rb'
- 'spec/models/analytics/cycle_analytics/aggregation_spec.rb'
- - 'spec/models/analytics/cycle_analytics/project_stage_spec.rb'
- 'spec/models/appearance_spec.rb'
- 'spec/models/application_setting_spec.rb'
- 'spec/models/audit_event_spec.rb'
@@ -4718,7 +4584,6 @@ Layout/LineLength:
- 'spec/models/ci/runner_spec.rb'
- 'spec/models/ci/variable_spec.rb'
- 'spec/models/clusters/agent_spec.rb'
- - 'spec/models/clusters/applications/cert_manager_spec.rb'
- 'spec/models/clusters/applications/ingress_spec.rb'
- 'spec/models/clusters/applications/knative_spec.rb'
- 'spec/models/clusters/applications/prometheus_spec.rb'
@@ -5038,7 +4903,6 @@ Layout/LineLength:
- 'spec/requests/api/notes_spec.rb'
- 'spec/requests/api/notification_settings_spec.rb'
- 'spec/requests/api/npm_project_packages_spec.rb'
- - 'spec/requests/api/nuget_group_packages_spec.rb'
- 'spec/requests/api/nuget_project_packages_spec.rb'
- 'spec/requests/api/pages/internal_access_spec.rb'
- 'spec/requests/api/pages/private_access_spec.rb'
@@ -5116,7 +4980,6 @@ Layout/LineLength:
- 'spec/rubocop/cop/performance/readlines_each_spec.rb'
- 'spec/rubocop/cop/rspec/env_assignment_spec.rb'
- 'spec/rubocop/cop/rspec/expect_gitlab_tracking_spec.rb'
- - 'spec/scripts/failed_tests_spec.rb'
- 'spec/serializers/accessibility_error_entity_spec.rb'
- 'spec/serializers/accessibility_reports_comparer_entity_spec.rb'
- 'spec/serializers/analytics/cycle_analytics/stage_entity_spec.rb'
@@ -5222,7 +5085,6 @@ Layout/LineLength:
- 'spec/services/google_cloud/service_accounts_service_spec.rb'
- 'spec/services/groups/autocomplete_service_spec.rb'
- 'spec/services/groups/create_service_spec.rb'
- - 'spec/services/groups/group_links/destroy_service_spec.rb'
- 'spec/services/groups/transfer_service_spec.rb'
- 'spec/services/groups/update_service_spec.rb'
- 'spec/services/groups/update_shared_runners_service_spec.rb'
@@ -5528,7 +5390,6 @@ Layout/LineLength:
- 'spec/support/shared_examples/models/concerns/has_repository_shared_examples.rb'
- 'spec/support/shared_examples/models/concerns/incident_management/escalatable_shared_examples.rb'
- 'spec/support/shared_examples/models/concerns/integrations/slack_mattermost_notifier_shared_examples.rb'
- - 'spec/support/shared_examples/models/concerns/issuable_shared_examples.rb'
- 'spec/support/shared_examples/models/concerns/limitable_shared_examples.rb'
- 'spec/support/shared_examples/models/concerns/repositories/can_housekeep_repository_shared_examples.rb'
- 'spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb'
@@ -5658,7 +5519,6 @@ Layout/LineLength:
- 'spec/views/admin/application_settings/_package_registry.html.haml_spec.rb'
- 'spec/views/admin/application_settings/general.html.haml_spec.rb'
- 'spec/views/admin/application_settings/repository.html.haml_spec.rb'
- - 'spec/views/admin/broadcast_messages/index.html.haml_spec.rb'
- 'spec/views/admin/dashboard/index.html.haml_spec.rb'
- 'spec/views/devise/shared/_signin_box.html.haml_spec.rb'
- 'spec/views/groups/edit.html.haml_spec.rb'
diff --git a/.rubocop_todo/layout/space_inside_percent_literal_delimiters.yml b/.rubocop_todo/layout/space_inside_percent_literal_delimiters.yml
new file mode 100644
index 00000000000..5e1ce3c256c
--- /dev/null
+++ b/.rubocop_todo/layout/space_inside_percent_literal_delimiters.yml
@@ -0,0 +1,6 @@
+---
+# Cop supports --autocorrect.
+Layout/SpaceInsidePercentLiteralDelimiters:
+ Details: grace period
+ Exclude:
+ - 'spec/deprecation_toolkit_env.rb'
diff --git a/.rubocop_todo/lint/ambiguous_operator_precedence.yml b/.rubocop_todo/lint/ambiguous_operator_precedence.yml
new file mode 100644
index 00000000000..ea6cadc7f8a
--- /dev/null
+++ b/.rubocop_todo/lint/ambiguous_operator_precedence.yml
@@ -0,0 +1,152 @@
+---
+# Cop supports --autocorrect.
+Lint/AmbiguousOperatorPrecedence:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/explore/projects_controller.rb'
+ - 'app/controllers/omniauth_callbacks_controller.rb'
+ - 'app/controllers/profiles/two_factor_auths_controller.rb'
+ - 'app/helpers/form_helper.rb'
+ - 'app/helpers/groups_helper.rb'
+ - 'app/helpers/time_helper.rb'
+ - 'app/helpers/timeboxes_helper.rb'
+ - 'app/helpers/tree_helper.rb'
+ - 'app/helpers/users_helper.rb'
+ - 'app/models/concerns/relative_positioning.rb'
+ - 'app/models/design_management/version.rb'
+ - 'app/models/integrations/chat_message/pipeline_message.rb'
+ - 'app/models/merge_request_diff.rb'
+ - 'app/models/namespace.rb'
+ - 'app/models/network/graph.rb'
+ - 'app/models/note.rb'
+ - 'app/models/notification_reason.rb'
+ - 'app/models/project_feature.rb'
+ - 'app/models/terraform/state.rb'
+ - 'app/models/webauthn_registration.rb'
+ - 'app/presenters/project_presenter.rb'
+ - 'app/services/cohorts_service.rb'
+ - 'app/services/concerns/validates_classification_label.rb'
+ - 'app/services/groups/group_links/destroy_service.rb'
+ - 'app/services/issuable_links/create_service.rb'
+ - 'app/services/issues/relative_position_rebalancing_service.rb'
+ - 'app/services/jira/requests/base.rb'
+ - 'app/services/projects/blame_service.rb'
+ - 'config/initializers/1_settings.rb'
+ - 'config/initializers/carrierwave_patch.rb'
+ - 'config/initializers/kaminari_active_record_relation_methods_with_limit.rb'
+ - 'danger/roulette/Dangerfile'
+ - 'ee/app/models/ee/integrations/jira.rb'
+ - 'ee/app/models/geo/upload_registry.rb'
+ - 'ee/app/models/iterations/cadence.rb'
+ - 'ee/app/models/license.rb'
+ - 'ee/app/models/namespaces/storage/root_size.rb'
+ - 'ee/app/policies/ee/issuable_policy.rb'
+ - 'ee/app/services/boards/epics/position_create_service.rb'
+ - 'ee/app/services/geo/registry_consistency_service.rb'
+ - 'ee/app/services/vulnerabilities/create_service.rb'
+ - 'ee/lib/gitlab/expiring_subscription_message.rb'
+ - 'ee/spec/helpers/ee/users/callouts_helper_spec.rb'
+ - 'ee/spec/models/ee/audit_event_spec.rb'
+ - 'ee/spec/models/ee/iterations/cadence_spec.rb'
+ - 'ee/spec/models/ee/project_statistics_spec.rb'
+ - 'ee/spec/models/geo/project_registry_spec.rb'
+ - 'ee/spec/models/license_spec.rb'
+ - 'ee/spec/models/security/finding_spec.rb'
+ - 'ee/spec/models/status_page/project_setting_spec.rb'
+ - 'ee/spec/presenters/subscription_presenter_spec.rb'
+ - 'ee/spec/requests/api/graphql/project/incident_management/oncall_shifts_spec.rb'
+ - 'ee/spec/services/boards/epics/position_create_service_spec.rb'
+ - 'ee/spec/support/shared_examples/models/geo_framework_registry_shared_examples.rb'
+ - 'ee/spec/workers/incident_management/oncall_rotations/persist_shifts_job_spec.rb'
+ - 'lib/banzai/filter/references/user_reference_filter.rb'
+ - 'lib/banzai/filter_array.rb'
+ - 'lib/extracts_ref.rb'
+ - 'lib/gitlab/chaos.rb'
+ - 'lib/gitlab/ci/config/normalizer/number_strategy.rb'
+ - 'lib/gitlab/console.rb'
+ - 'lib/gitlab/database/background_migration/batch_metrics.rb'
+ - 'lib/gitlab/database/background_migration/batched_migration.rb'
+ - 'lib/gitlab/database/migrations/background_migration_helpers.rb'
+ - 'lib/gitlab/database/partitioning_migration_helpers/table_management_helpers.rb'
+ - 'lib/gitlab/database/postgres_hll/buckets.rb'
+ - 'lib/gitlab/database/query_analyzers/prevent_cross_database_modification.rb'
+ - 'lib/gitlab/email/message/in_product_marketing/helper.rb'
+ - 'lib/gitlab/i18n/po_linter.rb'
+ - 'lib/gitlab/import_export/project/relation_factory.rb'
+ - 'lib/gitlab/memory/instrumentation.rb'
+ - 'lib/gitlab/metrics/prometheus.rb'
+ - 'lib/gitlab/middleware/rails_queue_duration.rb'
+ - 'lib/gitlab/pagination/gitaly_keyset_pager.rb'
+ - 'lib/gitlab/quick_actions/issuable_actions.rb'
+ - 'lib/gitlab/relative_positioning.rb'
+ - 'lib/gitlab/template_parser/parser.rb'
+ - 'lib/gitlab/tree_summary.rb'
+ - 'lib/gitlab/usage/metrics/name_suggestion.rb'
+ - 'lib/gitlab/utils/email.rb'
+ - 'lib/omni_auth/strategies/bitbucket.rb'
+ - 'qa/qa/ee/page/project/secure/pipeline_security.rb'
+ - 'qa/qa/resource/api_fabricator.rb'
+ - 'qa/qa/resource/group_access_token.rb'
+ - 'qa/qa/resource/impersonation_token.rb'
+ - 'qa/qa/resource/personal_access_token.rb'
+ - 'qa/qa/resource/project_access_token.rb'
+ - 'qa/qa/runtime/feature.rb'
+ - 'qa/qa/tools/test_resources_handler.rb'
+ - 'scripts/packages/automated_cleanup.rb'
+ - 'scripts/perf/gc/print_gc_stats.rb'
+ - 'scripts/perf/query_limiting_report.rb'
+ - 'scripts/review_apps/automated_cleanup.rb'
+ - 'spec/controllers/projects/issues_controller_spec.rb'
+ - 'spec/controllers/search_controller_spec.rb'
+ - 'spec/helpers/events_helper_spec.rb'
+ - 'spec/helpers/time_helper_spec.rb'
+ - 'spec/lib/api/helpers/pagination_strategies_spec.rb'
+ - 'spec/lib/banzai/filter/front_matter_filter_spec.rb'
+ - 'spec/lib/gitlab/ci/ansi2json/line_spec.rb'
+ - 'spec/lib/gitlab/ci/runner_releases_spec.rb'
+ - 'spec/lib/gitlab/ci/trace/chunked_io_spec.rb'
+ - 'spec/lib/gitlab/ci/trace/stream_spec.rb'
+ - 'spec/lib/gitlab/conan_token_spec.rb'
+ - 'spec/lib/gitlab/database/background_migration/batched_job_spec.rb'
+ - 'spec/lib/gitlab/database/batch_count_spec.rb'
+ - 'spec/lib/gitlab/database/consistency_checker_spec.rb'
+ - 'spec/lib/gitlab/graphql/tracers/metrics_tracer_spec.rb'
+ - 'spec/lib/gitlab/instrumentation/redis_interceptor_spec.rb'
+ - 'spec/lib/gitlab/issues/rebalancing/state_spec.rb'
+ - 'spec/lib/gitlab/kroki_spec.rb'
+ - 'spec/lib/gitlab/memory/instrumentation_spec.rb'
+ - 'spec/lib/gitlab/memory/watchdog/configurator_spec.rb'
+ - 'spec/lib/gitlab/memory/watchdog/monitor/unique_memory_growth_spec.rb'
+ - 'spec/lib/gitlab/project_search_results_spec.rb'
+ - 'spec/lib/gitlab/prometheus_client_spec.rb'
+ - 'spec/lib/gitlab/quick_actions/extractor_spec.rb'
+ - 'spec/lib/gitlab/regex_spec.rb'
+ - 'spec/lib/gitlab/search/abuse_validators/no_abusive_term_length_validator_spec.rb'
+ - 'spec/lib/gitlab/slash_commands/deploy_spec.rb'
+ - 'spec/lib/gitlab/url_blocker_spec.rb'
+ - 'spec/mailers/notify_spec.rb'
+ - 'spec/models/appearance_spec.rb'
+ - 'spec/models/ci/build_spec.rb'
+ - 'spec/models/ci/runner_spec.rb'
+ - 'spec/models/commit_spec.rb'
+ - 'spec/models/concerns/pg_full_text_searchable_spec.rb'
+ - 'spec/models/custom_emoji_spec.rb'
+ - 'spec/models/environment_spec.rb'
+ - 'spec/models/grafana_integration_spec.rb'
+ - 'spec/models/integrations/chat_message/push_message_spec.rb'
+ - 'spec/models/merge_request_diff_spec.rb'
+ - 'spec/models/packages/package_file_spec.rb'
+ - 'spec/models/project_metrics_setting_spec.rb'
+ - 'spec/models/prometheus_alert_spec.rb'
+ - 'spec/requests/api/pypi_packages_spec.rb'
+ - 'spec/requests/lfs_http_spec.rb'
+ - 'spec/services/ci/pipeline_schedules/calculate_next_run_service_spec.rb'
+ - 'spec/services/issues/relative_position_rebalancing_service_spec.rb'
+ - 'spec/services/web_hook_service_spec.rb'
+ - 'spec/support/cycle_analytics_helpers/test_generation.rb'
+ - 'spec/support/helpers/dependency_proxy_helpers.rb'
+ - 'spec/support/models/ci/partitioning_testing/cascade_check.rb'
+ - 'spec/support/shared_examples/features/sidebar_shared_examples.rb'
+ - 'spec/support/shared_examples/models/relative_positioning_shared_examples.rb'
+ - 'spec/support/shared_examples/services/packages/debian/generate_distribution_shared_examples.rb'
+ - 'spec/tooling/lib/tooling/kubernetes_client_spec.rb'
diff --git a/.rubocop_todo/lint/ambiguous_range.yml b/.rubocop_todo/lint/ambiguous_range.yml
new file mode 100644
index 00000000000..71fa2441680
--- /dev/null
+++ b/.rubocop_todo/lint/ambiguous_range.yml
@@ -0,0 +1,9 @@
+---
+# Cop supports --autocorrect.
+Lint/AmbiguousRange:
+ Details: grace period
+ Exclude:
+ - 'app/models/ci/runner.rb'
+ - 'app/services/clusters/agent_tokens/track_usage_service.rb'
+ - 'lib/gitlab/seeders/ci/runner/runner_fleet_pipeline_seeder.rb'
+ - 'spec/lib/gitlab/database/reindexing/reindex_concurrently_spec.rb'
diff --git a/.rubocop_todo/lint/deprecated_constants.yml b/.rubocop_todo/lint/deprecated_constants.yml
new file mode 100644
index 00000000000..ab0c9884e0a
--- /dev/null
+++ b/.rubocop_todo/lint/deprecated_constants.yml
@@ -0,0 +1,7 @@
+---
+# Cop supports --autocorrect.
+Lint/DeprecatedConstants:
+ Details: grace period
+ Exclude:
+ - 'scripts/pipeline_test_report_builder.rb'
+ - 'spec/scripts/pipeline_test_report_builder_spec.rb'
diff --git a/.rubocop_todo/lint/duplicate_branch.yml b/.rubocop_todo/lint/duplicate_branch.yml
new file mode 100644
index 00000000000..89d1ff7e2aa
--- /dev/null
+++ b/.rubocop_todo/lint/duplicate_branch.yml
@@ -0,0 +1,36 @@
+---
+Lint/DuplicateBranch:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/concerns/issuable_collections.rb'
+ - 'app/controllers/concerns/sorting_preference.rb'
+ - 'app/controllers/projects/google_cloud/databases_controller.rb'
+ - 'app/controllers/repositories/lfs_storage_controller.rb'
+ - 'app/helpers/ci/status_helper.rb'
+ - 'app/helpers/icons_helper.rb'
+ - 'app/helpers/labels_helper.rb'
+ - 'app/models/application_setting_implementation.rb'
+ - 'app/models/integrations/base_chat_notification.rb'
+ - 'app/models/packages/package.rb'
+ - 'app/models/release.rb'
+ - 'app/services/admin/set_feature_flag_service.rb'
+ - 'app/services/ci/job_token_scope/add_project_service.rb'
+ - 'app/services/spam/spam_action_service.rb'
+ - 'config/initializers/postgresql_cte.rb'
+ - 'ee/app/controllers/projects/integrations/jira/issues_controller.rb'
+ - 'ee/app/controllers/projects/security/policies_controller.rb'
+ - 'ee/app/finders/compliance_management/merge_requests/compliance_violations_finder.rb'
+ - 'ee/app/models/ee/vulnerability.rb'
+ - 'ee/app/models/license.rb'
+ - 'ee/app/models/vulnerabilities/read.rb'
+ - 'lib/event_filter.rb'
+ - 'lib/gitlab/checks/branch_check.rb'
+ - 'lib/gitlab/ci/yaml_processor.rb'
+ - 'lib/gitlab/database/load_balancing/load_balancer.rb'
+ - 'lib/gitlab/import_export/project/relation_factory.rb'
+ - 'lib/gitlab/search_results.rb'
+ - 'lib/mattermost/session.rb'
+ - 'lib/sidebars/groups/menus/settings_menu.rb'
+ - 'qa/qa/resource/pipeline.rb'
+ - 'scripts/rubocop-parse'
+ - 'spec/support/shared_contexts/features/integrations/integrations_shared_context.rb'
diff --git a/.rubocop_todo/lint/duplicate_regexp_character_class_element.yml b/.rubocop_todo/lint/duplicate_regexp_character_class_element.yml
new file mode 100644
index 00000000000..813a27455a8
--- /dev/null
+++ b/.rubocop_todo/lint/duplicate_regexp_character_class_element.yml
@@ -0,0 +1,7 @@
+---
+# Cop supports --autocorrect.
+Lint/DuplicateRegexpCharacterClassElement:
+ Details: grace period
+ Exclude:
+ - 'lib/gitlab/path_regex.rb'
+ - 'spec/support/shared_contexts/features/integrations/integrations_shared_context.rb'
diff --git a/.rubocop_todo/lint/empty_block.yml b/.rubocop_todo/lint/empty_block.yml
new file mode 100644
index 00000000000..dc2d9bf521e
--- /dev/null
+++ b/.rubocop_todo/lint/empty_block.yml
@@ -0,0 +1,211 @@
+---
+Lint/EmptyBlock:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/groups/boards_controller.rb'
+ - 'app/controllers/projects/boards_controller.rb'
+ - 'app/controllers/projects/pipelines_controller.rb'
+ - 'app/experiments/logged_out_marketing_header_experiment.rb'
+ - 'app/experiments/security_reports_mr_widget_prompt_experiment.rb'
+ - 'config/application.rb'
+ - 'ee/app/controllers/projects/learn_gitlab_controller.rb'
+ - 'ee/spec/factories/incident_management/escalation_rules.rb'
+ - 'ee/spec/finders/snippets_finder_spec.rb'
+ - 'ee/spec/graphql/types/epic_type_spec.rb'
+ - 'ee/spec/graphql/types/incident_management/escalation_rule_input_type_spec.rb'
+ - 'ee/spec/lib/gitlab/ci/minutes/cost_factor_spec.rb'
+ - 'ee/spec/lib/gitlab/geo/log_cursor/lease_spec.rb'
+ - 'ee/spec/lib/gitlab/ip_address_state_spec.rb'
+ - 'ee/spec/lib/gitlab/search_context/builder_spec.rb'
+ - 'ee/spec/models/concerns/ee/noteable_spec.rb'
+ - 'ee/spec/models/dast/profile_schedule_spec.rb'
+ - 'ee/spec/models/ee/ci/build_dependencies_spec.rb'
+ - 'ee/spec/models/ee/user_spec.rb'
+ - 'ee/spec/models/environment_spec.rb'
+ - 'ee/spec/models/protected_environment_spec.rb'
+ - 'ee/spec/models/security/orchestration_policy_configuration_spec.rb'
+ - 'ee/spec/models/security/orchestration_policy_rule_schedule_spec.rb'
+ - 'ee/spec/models/vulnerabilities/stat_diff_spec.rb'
+ - 'ee/spec/requests/api/analytics/group_activity_analytics_spec.rb'
+ - 'ee/spec/requests/api/graphql/boards/board_lists_query_spec.rb'
+ - 'ee/spec/requests/api/vulnerability_exports_spec.rb'
+ - 'ee/spec/requests/groups/security/credentials_controller_spec.rb'
+ - 'ee/spec/requests/lfs_http_spec.rb'
+ - 'ee/spec/serializers/merge_request_poll_widget_entity_spec.rb'
+ - 'ee/spec/services/audit_events/register_runner_audit_event_service_spec.rb'
+ - 'ee/spec/services/audit_events/unregister_runner_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/ci/runners/register_runner_service_spec.rb'
+ - 'ee/spec/services/incident_management/escalation_policies/update_service_spec.rb'
+ - 'lib/api/helpers/groups_helpers.rb'
+ - 'lib/api/helpers/issues_helpers.rb'
+ - 'lib/api/helpers/members_helpers.rb'
+ - 'lib/api/helpers/merge_requests_helpers.rb'
+ - 'lib/api/helpers/projects_helpers.rb'
+ - 'lib/api/helpers/protected_branches_helpers.rb'
+ - 'lib/api/helpers/protected_tags_helpers.rb'
+ - 'lib/api/helpers/remote_mirrors_helpers.rb'
+ - 'lib/api/helpers/settings_helpers.rb'
+ - 'lib/api/helpers/users_helpers.rb'
+ - 'lib/api/helpers/variables_helpers.rb'
+ - 'lib/api/merge_requests.rb'
+ - 'lib/gitlab/alert_management/payload/base.rb'
+ - 'lib/gitlab/seeder.rb'
+ - 'lib/sidebars/groups/panel.rb'
+ - 'lib/sidebars/projects/panel.rb'
+ - 'qa/qa/specs/features/shared_contexts/import/gitlab_group_migration_common.rb'
+ - 'qa/spec/scenario/test/instance/airgapped_spec.rb'
+ - 'qa/spec/specs/helpers/context_selector_spec.rb'
+ - 'qa/spec/specs/helpers/feature_flag_spec.rb'
+ - 'qa/spec/specs/helpers/quarantine_spec.rb'
+ - 'qa/spec/support/formatters/test_metrics_formatter_spec.rb'
+ - 'scripts/lib/glfm/update_example_snapshots.rb'
+ - 'scripts/lib/glfm/update_specification.rb'
+ - 'spec/controllers/application_controller_spec.rb'
+ - 'spec/controllers/projects/artifacts_controller_spec.rb'
+ - 'spec/controllers/projects/feature_flags_controller_spec.rb'
+ - 'spec/dependencies/omniauth_saml_spec.rb'
+ - 'spec/experiments/application_experiment_spec.rb'
+ - 'spec/factories/packages/package_files.rb'
+ - 'spec/features/merge_request/user_sees_deployment_widget_spec.rb'
+ - 'spec/features/projects/environments/environment_spec.rb'
+ - 'spec/finders/ci/runners_finder_spec.rb'
+ - 'spec/initializers/enumerator_next_patch_spec.rb'
+ - 'spec/initializers/net_http_response_patch_spec.rb'
+ - 'spec/lib/api/base_spec.rb'
+ - 'spec/lib/api/helpers/authentication_spec.rb'
+ - 'spec/lib/bitbucket_server/connection_spec.rb'
+ - 'spec/lib/feature_spec.rb'
+ - 'spec/lib/gitlab/application_context_spec.rb'
+ - 'spec/lib/gitlab/audit/ci_runner_token_author_spec.rb'
+ - 'spec/lib/gitlab/background_migration/batched_migration_job_spec.rb'
+ - 'spec/lib/gitlab/chat_name_token_spec.rb'
+ - 'spec/lib/gitlab/ci/build/rules/rule/clause/changes_spec.rb'
+ - 'spec/lib/gitlab/ci/build/rules/rule/clause/exists_spec.rb'
+ - 'spec/lib/gitlab/ci/config/edge_stages_injector_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/retry_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/root_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/rules/rule/changes_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/rules/rule_spec.rb'
+ - 'spec/lib/gitlab/ci/config/external/context_spec.rb'
+ - 'spec/lib/gitlab/ci/config/external/file/artifact_spec.rb'
+ - 'spec/lib/gitlab/ci/config/external/file/base_spec.rb'
+ - 'spec/lib/gitlab/ci/config/external/rules_spec.rb'
+ - 'spec/lib/gitlab/ci/config/normalizer_spec.rb'
+ - 'spec/lib/gitlab/ci/parsers/security/validators/schema_validator_spec.rb'
+ - 'spec/lib/gitlab/ci/pipeline/chain/seed_block_spec.rb'
+ - 'spec/lib/gitlab/ci/pipeline/chain/seed_spec.rb'
+ - 'spec/lib/gitlab/ci/pipeline/logger_spec.rb'
+ - 'spec/lib/gitlab/ci/runner_releases_spec.rb'
+ - 'spec/lib/gitlab/ci/trace/chunked_io_spec.rb'
+ - 'spec/lib/gitlab/ci/variables/helpers_spec.rb'
+ - 'spec/lib/gitlab/ci/yaml_processor_spec.rb'
+ - 'spec/lib/gitlab/database/each_database_spec.rb'
+ - 'spec/lib/gitlab/database/load_balancing/load_balancer_spec.rb'
+ - 'spec/lib/gitlab/database/load_balancing/sidekiq_client_middleware_spec.rb'
+ - 'spec/lib/gitlab/database/migration_helpers/automatic_lock_writes_on_tables_spec.rb'
+ - 'spec/lib/gitlab/database/migration_helpers/v2_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/instrumentation_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/lock_retries_helpers_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/observers/transaction_duration_spec.rb'
+ - 'spec/lib/gitlab/database/obsolete_ignored_columns_spec.rb'
+ - 'spec/lib/gitlab/database/shared_model_spec.rb'
+ - 'spec/lib/gitlab/database/with_lock_retries_outside_transaction_spec.rb'
+ - 'spec/lib/gitlab/database/with_lock_retries_spec.rb'
+ - 'spec/lib/gitlab/database_importers/common_metrics/importer_spec.rb'
+ - 'spec/lib/gitlab/database_spec.rb'
+ - 'spec/lib/gitlab/etag_caching/router/graphql_spec.rb'
+ - 'spec/lib/gitlab/exclusive_lease_helpers_spec.rb'
+ - 'spec/lib/gitlab/exclusive_lease_spec.rb'
+ - 'spec/lib/gitlab/git/raw_diff_change_spec.rb'
+ - 'spec/lib/gitlab/git/repository_spec.rb'
+ - 'spec/lib/gitlab/gitaly_client/operation_service_spec.rb'
+ - 'spec/lib/gitlab/github_import/client_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/protected_branches_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/pull_requests_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/pull_requests_merged_by_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/pull_requests_reviews_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/single_endpoint_diff_notes_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/single_endpoint_issue_notes_importer_spec.rb'
+ - 'spec/lib/gitlab/github_import/importer/single_endpoint_merge_request_notes_importer_spec.rb'
+ - 'spec/lib/gitlab/gpg_spec.rb'
+ - 'spec/lib/gitlab/graphql/negatable_arguments_spec.rb'
+ - 'spec/lib/gitlab/http_io_spec.rb'
+ - 'spec/lib/gitlab/memory/reports_daemon_spec.rb'
+ - 'spec/lib/gitlab/metrics/background_transaction_spec.rb'
+ - 'spec/lib/gitlab/metrics/web_transaction_spec.rb'
+ - 'spec/lib/gitlab/patch/prependable_spec.rb'
+ - 'spec/lib/gitlab/profiler_spec.rb'
+ - 'spec/lib/gitlab/quick_actions/extractor_spec.rb'
+ - 'spec/lib/gitlab/rack_attack/instrumented_cache_store_spec.rb'
+ - 'spec/lib/gitlab/search_context/builder_spec.rb'
+ - 'spec/lib/gitlab/session_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_daemon/memory_killer_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_logging/structured_logger_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/extra_done_log_metadata_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/size_limiter/server_spec.rb'
+ - 'spec/lib/gitlab/verify/uploads_spec.rb'
+ - 'spec/lib/gitlab_spec.rb'
+ - 'spec/lib/marginalia_spec.rb'
+ - 'spec/lib/mattermost/session_spec.rb'
+ - 'spec/models/aws/role_spec.rb'
+ - 'spec/models/ci/build_dependencies_spec.rb'
+ - 'spec/models/ci/build_spec.rb'
+ - 'spec/models/ci/build_trace_metadata_spec.rb'
+ - 'spec/models/ci/job_artifact_spec.rb'
+ - 'spec/models/ci/pipeline_schedule_spec.rb'
+ - 'spec/models/ci/pipeline_spec.rb'
+ - 'spec/models/ci/runner_spec.rb'
+ - 'spec/models/clusters/cluster_spec.rb'
+ - 'spec/models/commit_status_spec.rb'
+ - 'spec/models/concerns/has_environment_scope_spec.rb'
+ - 'spec/models/concerns/noteable_spec.rb'
+ - 'spec/models/container_expiration_policy_spec.rb'
+ - 'spec/models/container_repository_spec.rb'
+ - 'spec/models/environment_spec.rb'
+ - 'spec/models/merge_request/approval_removal_settings_spec.rb'
+ - 'spec/models/merge_request_spec.rb'
+ - 'spec/models/user_spec.rb'
+ - 'spec/presenters/ci/pipeline_presenter_spec.rb'
+ - 'spec/requests/api/ci/runner/jobs_artifacts_spec.rb'
+ - 'spec/requests/api/ci/runner/jobs_request_post_spec.rb'
+ - 'spec/requests/api/ci/triggers_spec.rb'
+ - 'spec/requests/api/graphql/boards/board_list_issues_query_spec.rb'
+ - 'spec/requests/api/graphql/boards/board_lists_query_spec.rb'
+ - 'spec/requests/api/graphql/mutations/achievements/create_spec.rb'
+ - 'spec/requests/api/group_variables_spec.rb'
+ - 'spec/requests/api/groups_spec.rb'
+ - 'spec/requests/api/helpers_spec.rb'
+ - 'spec/requests/api/markdown_spec.rb'
+ - 'spec/requests/api/projects_spec.rb'
+ - 'spec/requests/api/release/links_spec.rb'
+ - 'spec/requests/api/releases_spec.rb'
+ - 'spec/requests/api/unleash_spec.rb'
+ - 'spec/rubocop/cop/migration/create_table_with_foreign_keys_spec.rb'
+ - 'spec/services/auto_merge/base_service_spec.rb'
+ - 'spec/services/auto_merge_service_spec.rb'
+ - 'spec/services/ci/archive_trace_service_spec.rb'
+ - 'spec/services/ci/create_pipeline_service_spec.rb'
+ - 'spec/services/ci/parse_dotenv_artifact_service_spec.rb'
+ - 'spec/services/ci/runners/bulk_delete_runners_service_spec.rb'
+ - 'spec/services/ci/runners/register_runner_service_spec.rb'
+ - 'spec/services/ci/stuck_builds/drop_pending_service_spec.rb'
+ - 'spec/services/ci/stuck_builds/drop_scheduled_service_spec.rb'
+ - 'spec/services/deployments/create_for_build_service_spec.rb'
+ - 'spec/services/environments/create_for_build_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_object_download_list_service_spec.rb'
+ - 'spec/services/releases/destroy_service_spec.rb'
+ - 'spec/services/releases/update_service_spec.rb'
+ - 'spec/services/terraform/remote_state_handler_spec.rb'
+ - 'spec/support/shared_contexts/security_and_compliance_permissions_shared_context.rb'
+ - 'spec/support/shared_examples/lib/gitlab/ci/ci_trace_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/sidekiq_middleware/strategy_shared_examples.rb'
+ - 'spec/support/shared_examples/models/concerns/bulk_insert_safe_shared_examples.rb'
+ - 'spec/support/shared_examples/quick_actions/issue/board_move_quick_action_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/lfs_http_shared_examples.rb'
+ - 'spec/support/shared_examples/sends_git_audit_streaming_event_shared_examples.rb'
+ - 'spec/support_specs/database/without_check_constraint_spec.rb'
+ - 'spec/views/layouts/_published_experiments.html.haml_spec.rb'
+ - 'spec/workers/ci/initial_pipeline_process_worker_spec.rb'
diff --git a/.rubocop_todo/lint/empty_class.yml b/.rubocop_todo/lint/empty_class.yml
new file mode 100644
index 00000000000..c7c90313992
--- /dev/null
+++ b/.rubocop_todo/lint/empty_class.yml
@@ -0,0 +1,5 @@
+---
+Lint/EmptyClass:
+ Details: grace period
+ Exclude:
+ - 'spec/lib/gitlab/multi_destination_logger_spec.rb'
diff --git a/.rubocop_todo/lint/incompatible_io_select_with_fiber_scheduler.yml b/.rubocop_todo/lint/incompatible_io_select_with_fiber_scheduler.yml
new file mode 100644
index 00000000000..7e9dd3970be
--- /dev/null
+++ b/.rubocop_todo/lint/incompatible_io_select_with_fiber_scheduler.yml
@@ -0,0 +1,6 @@
+---
+# Cop supports --autocorrect.
+Lint/IncompatibleIoSelectWithFiberScheduler:
+ Details: grace period
+ Exclude:
+ - 'lib/gitlab/stack_prof.rb'
diff --git a/.rubocop_todo/lint/no_return_in_begin_end_blocks.yml b/.rubocop_todo/lint/no_return_in_begin_end_blocks.yml
new file mode 100644
index 00000000000..04115b12600
--- /dev/null
+++ b/.rubocop_todo/lint/no_return_in_begin_end_blocks.yml
@@ -0,0 +1,20 @@
+---
+Lint/NoReturnInBeginEndBlocks:
+ Details: grace period
+ Exclude:
+ - 'app/models/concerns/metric_image_uploading.rb'
+ - 'app/models/merge_request.rb'
+ - 'app/services/security/ci_configuration/sast_parser_service.rb'
+ - 'app/services/work_items/parent_links/create_service.rb'
+ - 'ee/app/services/epic_issues/create_service.rb'
+ - 'ee/app/services/gitlab_subscriptions/preview_billable_user_change_service.rb'
+ - 'ee/app/services/security/token_revocation_service.rb'
+ - 'ee/lib/api/vulnerability_findings.rb'
+ - 'ee/lib/ee/gitlab/scim/filter_parser.rb'
+ - 'lib/api/internal/base.rb'
+ - 'lib/gitlab/git/repository.rb'
+ - 'lib/gitlab/metrics/dashboard/importer.rb'
+ - 'lib/object_storage/config.rb'
+ - 'qa/qa/support/formatters/test_metrics_formatter.rb'
+ - 'qa/qa/support/influxdb_tools.rb'
+ - 'spec/support/database/prevent_cross_joins.rb'
diff --git a/.rubocop_todo/lint/non_atomic_file_operation.yml b/.rubocop_todo/lint/non_atomic_file_operation.yml
new file mode 100644
index 00000000000..924893c19de
--- /dev/null
+++ b/.rubocop_todo/lint/non_atomic_file_operation.yml
@@ -0,0 +1,46 @@
+---
+# Cop supports --autocorrect.
+Lint/NonAtomicFileOperation:
+ Details: grace period
+ Exclude:
+ - 'app/models/merge_request_diff.rb'
+ - 'app/services/bulk_imports/file_decompression_service.rb'
+ - 'app/services/bulk_imports/file_download_service.rb'
+ - 'app/services/projects/import_export/parallel_export_service.rb'
+ - 'app/services/projects/import_export/relation_export_service.rb'
+ - 'app/services/projects/lfs_pointers/lfs_download_service.rb'
+ - 'ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb'
+ - 'lib/bulk_imports/common/extractors/json_extractor.rb'
+ - 'lib/bulk_imports/common/extractors/ndjson_extractor.rb'
+ - 'lib/bulk_imports/common/pipelines/lfs_objects_pipeline.rb'
+ - 'lib/bulk_imports/common/pipelines/uploads_pipeline.rb'
+ - 'lib/bulk_imports/projects/pipelines/design_bundle_pipeline.rb'
+ - 'lib/bulk_imports/projects/pipelines/repository_bundle_pipeline.rb'
+ - 'lib/gitlab/ci/trace.rb'
+ - 'lib/gitlab/database/migrations/test_batched_background_runner.rb'
+ - 'lib/gitlab/database/query_analyzers/query_recorder.rb'
+ - 'lib/gitlab/gpg.rb'
+ - 'lib/gitlab/import_export/after_export_strategies/base_after_export_strategy.rb'
+ - 'lib/gitlab/import_export/recursive_merge_folders.rb'
+ - 'lib/gitlab/memory/upload_and_cleanup_reports.rb'
+ - 'lib/gitlab/setup_helper.rb'
+ - 'lib/tasks/gitlab/update_templates.rake'
+ - 'lib/tasks/tanuki_emoji.rake'
+ - 'qa/qa/git/repository.rb'
+ - 'qa/qa/runtime/browser.rb'
+ - 'spec/lib/bulk_imports/common/pipelines/lfs_objects_pipeline_spec.rb'
+ - 'spec/lib/bulk_imports/common/pipelines/uploads_pipeline_spec.rb'
+ - 'spec/lib/bulk_imports/projects/pipelines/design_bundle_pipeline_spec.rb'
+ - 'spec/lib/bulk_imports/projects/pipelines/repository_bundle_pipeline_spec.rb'
+ - 'spec/lib/gitlab/authorized_keys_spec.rb'
+ - 'spec/lib/gitlab/cleanup/project_uploads_spec.rb'
+ - 'spec/lib/gitlab/import_export/project/export_task_spec.rb'
+ - 'spec/lib/gitlab/import_export/uploads_manager_spec.rb'
+ - 'spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb'
+ - 'spec/services/bulk_imports/file_decompression_service_spec.rb'
+ - 'spec/services/bulk_imports/lfs_objects_export_service_spec.rb'
+ - 'spec/services/bulk_imports/repository_bundle_export_service_spec.rb'
+ - 'spec/services/bulk_imports/uploads_export_service_spec.rb'
+ - 'spec/support/database/query_recorder.rb'
+ - 'spec/tooling/rspec_flaky/report_spec.rb'
+ - 'tooling/rspec_flaky/report.rb'
diff --git a/.rubocop_todo/lint/or_assignment_to_constant.yml b/.rubocop_todo/lint/or_assignment_to_constant.yml
new file mode 100644
index 00000000000..741d65e9ffa
--- /dev/null
+++ b/.rubocop_todo/lint/or_assignment_to_constant.yml
@@ -0,0 +1,8 @@
+---
+# Cop supports --autocorrect.
+Lint/OrAssignmentToConstant:
+ Details: grace period
+ Exclude:
+ - 'lib/gitlab/email/handler/base_handler.rb'
+ - 'lib/gitlab/utils.rb'
+ - 'tooling/danger/project_helper.rb'
diff --git a/.rubocop_todo/lint/redundant_dir_glob_sort.yml b/.rubocop_todo/lint/redundant_dir_glob_sort.yml
new file mode 100644
index 00000000000..84be6e2dd6a
--- /dev/null
+++ b/.rubocop_todo/lint/redundant_dir_glob_sort.yml
@@ -0,0 +1,11 @@
+---
+# Cop supports --autocorrect.
+Lint/RedundantDirGlobSort:
+ Details: grace period
+ Exclude:
+ - 'app/models/release_highlight.rb'
+ - 'config/application.rb'
+ - 'ee/spec/spec_helper.rb'
+ - 'qa/qa/specs/spec_helper.rb'
+ - 'rubocop/rubocop.rb'
+ - 'spec/spec_helper.rb'
diff --git a/.rubocop_todo/lint/symbol_conversion.yml b/.rubocop_todo/lint/symbol_conversion.yml
new file mode 100644
index 00000000000..537b32d856d
--- /dev/null
+++ b/.rubocop_todo/lint/symbol_conversion.yml
@@ -0,0 +1,176 @@
+---
+# Cop supports --autocorrect.
+Lint/SymbolConversion:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/projects/environments/sample_metrics_controller.rb'
+ - 'app/helpers/breadcrumbs_helper.rb'
+ - 'app/helpers/environments_helper.rb'
+ - 'app/helpers/tooling/visual_review_helper.rb'
+ - 'app/services/google_cloud/create_cloudsql_instance_service.rb'
+ - 'app/services/packages/debian/generate_distribution_key_service.rb'
+ - 'app/services/packages/debian/process_changes_service.rb'
+ - 'config/puma.rb'
+ - 'ee/app/components/billing/plan_component.rb'
+ - 'ee/app/controllers/projects/security/scanned_resources_controller.rb'
+ - 'ee/app/models/product_analytics/jitsu_authentication.rb'
+ - 'ee/app/serializers/integrations/zentao_serializers/issue_entity.rb'
+ - 'ee/app/services/integrations/slack_interactions/incident_management/incident_modal_closed_service.rb'
+ - 'ee/app/services/integrations/slack_interactions/incident_management/incident_modal_submit_service.rb'
+ - 'ee/app/services/integrations/slack_interactions/slack_block_actions/incident_management/project_update_handler.rb'
+ - 'ee/app/services/integrations/slack_options/user_search_handler.rb'
+ - 'ee/db/fixtures/development/35_merge_request_predictions.rb'
+ - 'ee/lib/api/analytics/product_analytics.rb'
+ - 'ee/lib/ee/gitlab/scim/attribute_transform.rb'
+ - 'ee/lib/elastic/latest/note_class_proxy.rb'
+ - 'ee/lib/gitlab/applied_ml/suggested_reviewers/client.rb'
+ - 'ee/lib/slack/block_kit/app_home_opened.rb'
+ - 'ee/lib/slack/block_kit/incident_management/incident_modal_opened.rb'
+ - 'ee/spec/controllers/admin/audit_logs_controller_spec.rb'
+ - 'ee/spec/controllers/groups/audit_events_controller_spec.rb'
+ - 'ee/spec/controllers/projects/audit_events_controller_spec.rb'
+ - 'ee/spec/elastic/migrate/20220613120500_migrate_commits_to_separate_index_spec.rb'
+ - 'ee/spec/factories/vulnerabilities/findings.rb'
+ - 'ee/spec/features/admin/subscriptions/admin_views_subscription_spec.rb'
+ - 'ee/spec/graphql/resolvers/security_report_summary_resolver_spec.rb'
+ - 'ee/spec/helpers/ee/environments_helper_spec.rb'
+ - 'ee/spec/helpers/subscriptions_helper_spec.rb'
+ - 'ee/spec/lib/arkose/logger_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/recalculate_vulnerability_finding_signatures_for_findings_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/ci/parsers/security/common_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/scim/params_parser_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/tracking_spec.rb'
+ - 'ee/spec/lib/gitlab/ci/parsers/security/coverage_fuzzing_spec.rb'
+ - 'ee/spec/lib/gitlab/ci/parsers/security/dast_spec.rb'
+ - 'ee/spec/lib/gitlab/search/aggregation_parser_spec.rb'
+ - 'ee/spec/lib/gitlab/search/aggregation_spec.rb'
+ - 'ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb'
+ - 'ee/spec/models/ee/integrations/jira_spec.rb'
+ - 'ee/spec/models/integrations/github_spec.rb'
+ - 'ee/spec/requests/api/analytics/product_analytics_spec.rb'
+ - 'ee/spec/requests/api/graphql/audit_events/streaming/headers/create_spec.rb'
+ - 'ee/spec/requests/api/graphql/audit_events/streaming/headers/destroy_spec.rb'
+ - 'ee/spec/requests/api/graphql/audit_events/streaming/headers/update_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/audit_events/external_audit_event_destinations/create_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/audit_events/external_audit_event_destinations/destroy_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/audit_events/external_audit_event_destinations/update_spec.rb'
+ - 'ee/spec/requests/api/integrations/slack/interactions_spec.rb'
+ - 'ee/spec/requests/api/integrations/slack/options_spec.rb'
+ - 'ee/spec/requests/api/scim/group_scim_spec.rb'
+ - 'ee/spec/requests/api/scim/instance_scim_spec.rb'
+ - 'ee/spec/services/elastic/data_migration_service_spec.rb'
+ - 'ee/spec/services/integrations/slack_interactions/incident_management/incident_modal_closed_service_spec.rb'
+ - 'ee/spec/services/integrations/slack_interactions/incident_management/incident_modal_submit_service_spec.rb'
+ - 'ee/spec/services/security/token_revocation_service_spec.rb'
+ - 'ee/spec/support/helpers/subscription_portal_helpers.rb'
+ - 'ee/spec/support/prometheus/additional_metrics_shared_examples.rb'
+ - 'ee/spec/workers/deployments/approval_worker_spec.rb'
+ - 'lib/gitlab/auth/otp/strategies/forti_token_cloud.rb'
+ - 'lib/gitlab/data_builder/repository.rb'
+ - 'lib/gitlab/database/reindexing/grafana_notifier.rb'
+ - 'lib/gitlab/gitaly_client.rb'
+ - 'lib/gitlab/grape_logging/loggers/queue_duration_logger.rb'
+ - 'lib/gitlab/harbor/client.rb'
+ - 'lib/gitlab/prometheus_client.rb'
+ - 'lib/gitlab/zentao/client.rb'
+ - 'lib/version_check.rb'
+ - 'qa/qa/resource/merge_request.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_from_push_notification_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb'
+ - 'qa/spec/resource/events/project_spec.rb'
+ - 'qa/spec/specs/allure_report_spec.rb'
+ - 'spec/controllers/import/gitlab_controller_spec.rb'
+ - 'spec/controllers/jira_connect/branches_controller_spec.rb'
+ - 'spec/factories/ci/reports/codequality_degradations.rb'
+ - 'spec/factories/evidences.rb'
+ - 'spec/factories/packages/debian/file_metadatum.rb'
+ - 'spec/factories/packages/helm/file_metadatum.rb'
+ - 'spec/factories/packages/npm/metadata.rb'
+ - 'spec/features/file_uploads/graphql_add_design_spec.rb'
+ - 'spec/features/projects/new_project_spec.rb'
+ - 'spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb'
+ - 'spec/helpers/application_settings_helper_spec.rb'
+ - 'spec/helpers/auth_helper_spec.rb'
+ - 'spec/helpers/environments_helper_spec.rb'
+ - 'spec/helpers/form_helper_spec.rb'
+ - 'spec/helpers/tooling/visual_review_helper_spec.rb'
+ - 'spec/initializers/sawyer_patch_spec.rb'
+ - 'spec/lib/api/entities/nuget/dependency_group_spec.rb'
+ - 'spec/lib/api/entities/nuget/dependency_spec.rb'
+ - 'spec/lib/api/entities/nuget/metadatum_spec.rb'
+ - 'spec/lib/api/entities/nuget/package_metadata_catalog_entry_spec.rb'
+ - 'spec/lib/api/entities/nuget/search_result_spec.rb'
+ - 'spec/lib/bulk_imports/projects/pipelines/project_feature_pipeline_spec.rb'
+ - 'spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb'
+ - 'spec/lib/constraints/group_url_constrainer_spec.rb'
+ - 'spec/lib/constraints/project_url_constrainer_spec.rb'
+ - 'spec/lib/constraints/user_url_constrainer_spec.rb'
+ - 'spec/lib/container_registry/gitlab_api_client_spec.rb'
+ - 'spec/lib/generators/gitlab/usage_metric_definition/redis_hll_generator_spec.rb'
+ - 'spec/lib/generators/gitlab/usage_metric_definition_generator_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/job_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/jobs_spec.rb'
+ - 'spec/lib/gitlab/ci/config/entry/processable_spec.rb'
+ - 'spec/lib/gitlab/ci/interpolation/template_spec.rb'
+ - 'spec/lib/gitlab/ci/parsers/accessibility/pa11y_spec.rb'
+ - 'spec/lib/gitlab/ci/parsers/codequality/code_climate_spec.rb'
+ - 'spec/lib/gitlab/ci/reports/accessibility_reports_spec.rb'
+ - 'spec/lib/gitlab/ci/reports/codequality_reports_spec.rb'
+ - 'spec/lib/gitlab/ci/yaml_processor_spec.rb'
+ - 'spec/lib/gitlab/database/query_analyzers/prevent_cross_database_modification_spec.rb'
+ - 'spec/lib/gitlab/database/reindexing/grafana_notifier_spec.rb'
+ - 'spec/lib/gitlab/diff/formatters/text_formatter_spec.rb'
+ - 'spec/lib/gitlab/fake_application_settings_spec.rb'
+ - 'spec/lib/gitlab/grape_logging/formatters/lograge_with_timestamp_spec.rb'
+ - 'spec/lib/gitlab/grape_logging/loggers/queue_duration_logger_spec.rb'
+ - 'spec/lib/gitlab/grape_logging/loggers/token_logger_spec.rb'
+ - 'spec/lib/gitlab/harbor/client_spec.rb'
+ - 'spec/lib/gitlab/harbor/query_spec.rb'
+ - 'spec/lib/gitlab/import_export/json/legacy_reader/hash_spec.rb'
+ - 'spec/lib/gitlab/import_export/project/relation_factory_spec.rb'
+ - 'spec/lib/gitlab/lfs/client_spec.rb'
+ - 'spec/lib/gitlab/metrics/subscribers/active_record_spec.rb'
+ - 'spec/lib/gitlab/prometheus_client_spec.rb'
+ - 'spec/lib/gitlab/search/abuse_validators/no_abusive_coercion_from_string_validator_spec.rb'
+ - 'spec/lib/gitlab/slug/path_spec.rb'
+ - 'spec/lib/gitlab/tracking_spec.rb'
+ - 'spec/lib/gitlab/utils_spec.rb'
+ - 'spec/lib/google_api/cloud_platform/client_spec.rb'
+ - 'spec/lib/service_ping/devops_report_spec.rb'
+ - 'spec/models/integrations/prometheus_spec.rb'
+ - 'spec/models/merge_request_diff_commit_spec.rb'
+ - 'spec/models/packages/debian/file_metadatum_spec.rb'
+ - 'spec/models/packages/helm/file_metadatum_spec.rb'
+ - 'spec/models/packages/npm/metadatum_spec.rb'
+ - 'spec/presenters/packages/npm/package_presenter_spec.rb'
+ - 'spec/requests/api/admin/plan_limits_spec.rb'
+ - 'spec/requests/api/ci/job_artifacts_spec.rb'
+ - 'spec/requests/api/ci/runner/jobs_put_spec.rb'
+ - 'spec/requests/api/feature_flags_spec.rb'
+ - 'spec/requests/api/group_debian_distributions_spec.rb'
+ - 'spec/requests/api/integrations_spec.rb'
+ - 'spec/requests/api/project_debian_distributions_spec.rb'
+ - 'spec/requests/api/terraform/state_spec.rb'
+ - 'spec/requests/mailgun/webhooks_controller_spec.rb'
+ - 'spec/requests/users_controller_spec.rb'
+ - 'spec/scripts/pipeline_test_report_builder_spec.rb'
+ - 'spec/serializers/integrations/harbor_serializers/artifact_entity_spec.rb'
+ - 'spec/serializers/integrations/harbor_serializers/tag_entity_spec.rb'
+ - 'spec/services/bulk_imports/get_importable_data_service_spec.rb'
+ - 'spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb'
+ - 'spec/services/git/base_hooks_service_spec.rb'
+ - 'spec/services/incident_management/timeline_event_tags/create_service_spec.rb'
+ - 'spec/services/jira_connect/sync_service_spec.rb'
+ - 'spec/services/ml/experiment_tracking/candidate_repository_spec.rb'
+ - 'spec/support/google_api/cloud_platform_helpers.rb'
+ - 'spec/support/helpers/kubernetes_helpers.rb'
+ - 'spec/support/helpers/prometheus_helpers.rb'
+ - 'spec/support/prometheus/additional_metrics_shared_examples.rb'
+ - 'spec/support/shared_examples/harbor/artifacts_controller_shared_examples.rb'
+ - 'spec/support/shared_examples/harbor/repositories_controller_shared_examples.rb'
+ - 'spec/support/shared_examples/harbor/tags_controller_shared_examples.rb'
+ - 'spec/support/shared_examples/models/diff_positionable_note_shared_examples.rb'
+ - 'spec/views/admin/application_settings/_repository_storage.html.haml_spec.rb'
+ - 'spec/workers/gitlab/github_gists_import/import_gist_worker_spec.rb'
+ - 'spec/workers/packages/go/sync_packages_worker_spec.rb'
diff --git a/.rubocop_todo/lint/to_enum_arguments.yml b/.rubocop_todo/lint/to_enum_arguments.yml
new file mode 100644
index 00000000000..3e5579b4afb
--- /dev/null
+++ b/.rubocop_todo/lint/to_enum_arguments.yml
@@ -0,0 +1,6 @@
+---
+Lint/ToEnumArguments:
+ Details: grace period
+ Exclude:
+ - 'lib/gitlab/ci/trace/stream.rb'
+ - 'spec/lib/gitlab/ci/trace/section_parser_spec.rb'
diff --git a/.rubocop_todo/lint/triple_quotes.yml b/.rubocop_todo/lint/triple_quotes.yml
new file mode 100644
index 00000000000..7695fa46b03
--- /dev/null
+++ b/.rubocop_todo/lint/triple_quotes.yml
@@ -0,0 +1,7 @@
+---
+# Cop supports --autocorrect.
+Lint/TripleQuotes:
+ Details: grace period
+ Exclude:
+ - 'spec/lib/gitlab/database/with_lock_retries_outside_transaction_spec.rb'
+ - 'spec/lib/gitlab/database/with_lock_retries_spec.rb'
diff --git a/.rubocop_todo/lint/unexpected_block_arity.yml b/.rubocop_todo/lint/unexpected_block_arity.yml
new file mode 100644
index 00000000000..a7ad3d0a227
--- /dev/null
+++ b/.rubocop_todo/lint/unexpected_block_arity.yml
@@ -0,0 +1,6 @@
+---
+Lint/UnexpectedBlockArity:
+ Details: grace period
+ Exclude:
+ - 'app/services/issues/referenced_merge_requests_service.rb'
+ - 'lib/gitlab/issuable_sorter.rb'
diff --git a/.rubocop_todo/lint/unmodified_reduce_accumulator.yml b/.rubocop_todo/lint/unmodified_reduce_accumulator.yml
new file mode 100644
index 00000000000..6aec00738e7
--- /dev/null
+++ b/.rubocop_todo/lint/unmodified_reduce_accumulator.yml
@@ -0,0 +1,5 @@
+---
+Lint/UnmodifiedReduceAccumulator:
+ Details: grace period
+ Exclude:
+ - 'qa/qa/specs/runner.rb'
diff --git a/.rubocop_todo/lint/unused_block_argument.yml b/.rubocop_todo/lint/unused_block_argument.yml
new file mode 100644
index 00000000000..b6d3c3c7cdf
--- /dev/null
+++ b/.rubocop_todo/lint/unused_block_argument.yml
@@ -0,0 +1,448 @@
+---
+# Cop supports --autocorrect.
+Lint/UnusedBlockArgument:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/application_controller.rb'
+ - 'app/controllers/concerns/project_unauthorized.rb'
+ - 'app/controllers/concerns/renders_notes.rb'
+ - 'app/controllers/import/fogbugz_controller.rb'
+ - 'app/controllers/oauth/applications_controller.rb'
+ - 'app/controllers/projects/commit_controller.rb'
+ - 'app/finders/releases/group_releases_finder.rb'
+ - 'app/graphql/batch_loaders/award_emoji_votes_batch_loader.rb'
+ - 'app/graphql/batch_loaders/merge_request_diff_summary_batch_loader.rb'
+ - 'app/graphql/mutations/ci/runner/update.rb'
+ - 'app/graphql/resolvers/bulk_labels_resolver.rb'
+ - 'app/graphql/resolvers/incident_management/timeline_events_resolver.rb'
+ - 'app/graphql/resolvers/merge_requests_count_resolver.rb'
+ - 'app/graphql/resolvers/user_discussions_count_resolver.rb'
+ - 'app/graphql/resolvers/user_notes_count_resolver.rb'
+ - 'app/graphql/types/ci/runner_type.rb'
+ - 'app/graphql/types/global_id_type.rb'
+ - 'app/graphql/types/merge_request_type.rb'
+ - 'app/helpers/explore_helper.rb'
+ - 'app/helpers/issues_helper.rb'
+ - 'app/models/abuse_report.rb'
+ - 'app/models/alert_management/alert.rb'
+ - 'app/models/ci/build.rb'
+ - 'app/models/ci/instance_variable.rb'
+ - 'app/models/ci/pipeline.rb'
+ - 'app/models/clusters/cluster.rb'
+ - 'app/models/concerns/atomic_internal_id.rb'
+ - 'app/models/concerns/avatarable.rb'
+ - 'app/models/concerns/enum_with_nil.rb'
+ - 'app/models/concerns/mentionable.rb'
+ - 'app/models/customer_relations/organization.rb'
+ - 'app/models/integration.rb'
+ - 'app/models/merge_request.rb'
+ - 'app/models/namespace/root_storage_statistics.rb'
+ - 'app/models/project.rb'
+ - 'app/models/project_feature.rb'
+ - 'app/models/projects/build_artifacts_size_refresh.rb'
+ - 'app/models/service_desk_setting.rb'
+ - 'app/models/users/phone_number_validation.rb'
+ - 'app/models/wiki.rb'
+ - 'app/serializers/analytics_commit_entity.rb'
+ - 'app/serializers/build_details_entity.rb'
+ - 'app/serializers/ci/daily_build_group_report_result_entity.rb'
+ - 'app/serializers/ci/lint/result_entity.rb'
+ - 'app/serializers/diff_file_base_entity.rb'
+ - 'app/serializers/diff_file_entity.rb'
+ - 'app/serializers/diffs_entity.rb'
+ - 'app/serializers/environment_entity.rb'
+ - 'app/serializers/group_child_entity.rb'
+ - 'app/serializers/group_entity.rb'
+ - 'app/serializers/import/bitbucket_provider_repo_entity.rb'
+ - 'app/serializers/import/bitbucket_server_provider_repo_entity.rb'
+ - 'app/serializers/integrations/event_entity.rb'
+ - 'app/serializers/issue_entity.rb'
+ - 'app/serializers/merge_request_diff_entity.rb'
+ - 'app/serializers/merge_request_noteable_entity.rb'
+ - 'app/serializers/merge_request_poll_widget_entity.rb'
+ - 'app/serializers/merge_request_user_entity.rb'
+ - 'app/serializers/merge_request_widget_entity.rb'
+ - 'app/serializers/note_entity.rb'
+ - 'app/serializers/paginated_diff_entity.rb'
+ - 'app/serializers/personal_access_token_entity.rb'
+ - 'app/serializers/stage_entity.rb'
+ - 'app/serializers/test_suite_entity.rb'
+ - 'app/serializers/user_preference_entity.rb'
+ - 'app/services/authorized_project_update/find_records_due_for_refresh_service.rb'
+ - 'app/services/design_management/copy_design_collection/copy_service.rb'
+ - 'app/services/environments/stop_stale_service.rb'
+ - 'app/services/prometheus/proxy_service.rb'
+ - 'app/services/resource_events/synthetic_label_notes_builder_service.rb'
+ - 'app/services/web_hooks/log_execution_service.rb'
+ - 'app/uploaders/object_storage.rb'
+ - 'app/views/projects/commits/_commit.atom.builder'
+ - 'app/views/projects/tags/_tag.atom.builder'
+ - 'app/workers/process_commit_worker.rb'
+ - 'config/application.rb'
+ - 'config/initializers/0_log_deprecations.rb'
+ - 'config/initializers/content_security_policy.rb'
+ - 'config/initializers/doorkeeper.rb'
+ - 'config/initializers/lograge.rb'
+ - 'config/initializers/sawyer_patch.rb'
+ - 'config/initializers/warden.rb'
+ - 'config/routes/project.rb'
+ - 'config/routes/wiki.rb'
+ - 'db/post_migrate/20211117084814_migrate_remaining_u2f_registrations.rb'
+ - 'ee/app/finders/security/training_providers/kontra_url_finder.rb'
+ - 'ee/app/finders/security/training_providers/secure_code_warrior_url_finder.rb'
+ - 'ee/app/graphql/resolvers/incident_management/escalation_policies_resolver.rb'
+ - 'ee/app/graphql/resolvers/incident_management/oncall_rotations_resolver.rb'
+ - 'ee/app/graphql/types/health_status_enum.rb'
+ - 'ee/app/models/ee/application_setting.rb'
+ - 'ee/app/models/ee/ci/build.rb'
+ - 'ee/app/models/ee/deployment.rb'
+ - 'ee/app/models/ee/epic.rb'
+ - 'ee/app/models/ee/namespace_setting.rb'
+ - 'ee/app/serializers/ee/build_detail_entity.rb'
+ - 'ee/app/serializers/ee/merge_request_widget_entity.rb'
+ - 'ee/app/serializers/ee/note_entity.rb'
+ - 'ee/app/serializers/ee/note_user_entity.rb'
+ - 'ee/app/serializers/epic_entity.rb'
+ - 'ee/app/serializers/integrations/zentao_serializers/issue_entity.rb'
+ - 'ee/app/serializers/security/vulnerability_report_data_entity.rb'
+ - 'ee/app/services/elastic/cluster_reindexing_service.rb'
+ - 'ee/app/workers/sync_seat_link_request_worker.rb'
+ - 'ee/lib/ee/api/entities/geo_node_status.rb'
+ - 'ee/lib/ee/api/entities/gitlab_license.rb'
+ - 'ee/lib/ee/api/entities/group.rb'
+ - 'ee/lib/ee/api/entities/group_detail.rb'
+ - 'ee/lib/ee/api/entities/issue_basic.rb'
+ - 'ee/lib/ee/gitlab/analytics/cycle_analytics/stage_events.rb'
+ - 'ee/lib/ee/gitlab/quick_actions/issue_and_merge_request_actions.rb'
+ - 'ee/lib/ee/gitlab/throttle.rb'
+ - 'ee/lib/gitlab/authority_analyzer.rb'
+ - 'ee/lib/gitlab/insights/reducers/count_per_label_reducer.rb'
+ - 'ee/lib/gitlab/proxy.rb'
+ - 'ee/lib/tasks/contracts/merge_requests.rake'
+ - 'ee/lib/tasks/gitlab/elastic.rake'
+ - 'ee/lib/tasks/gitlab/indexer.rake'
+ - 'ee/lib/tasks/gitlab/seed/insights.rake'
+ - 'ee/spec/config/metrics/every_metric_definition_spec.rb'
+ - 'ee/spec/elastic/migrate/20220118150500_delete_orphaned_commits_spec.rb'
+ - 'ee/spec/elastic/migrate/20220119120500_populate_commit_permissions_in_main_index_spec.rb'
+ - 'ee/spec/elastic/migrate/20220613120500_migrate_commits_to_separate_index_spec.rb'
+ - 'ee/spec/factories/approvers.rb'
+ - 'ee/spec/factories/ci/pipelines.rb'
+ - 'ee/spec/factories/ci/reports/license_scanning/report.rb'
+ - 'ee/spec/factories/group_saml_identities.rb'
+ - 'ee/spec/factories/groups.rb'
+ - 'ee/spec/factories/merge_requests.rb'
+ - 'ee/spec/factories/namespaces.rb'
+ - 'ee/spec/factories/projects.rb'
+ - 'ee/spec/factories/protected_branches.rb'
+ - 'ee/spec/factories/protected_environments.rb'
+ - 'ee/spec/factories/slack_integrations.rb'
+ - 'ee/spec/factories/users.rb'
+ - 'ee/spec/features/billings/extend_reactivate_trial_spec.rb'
+ - 'ee/spec/features/groups/group_settings_spec.rb'
+ - 'ee/spec/graphql/mutations/dast/profiles/update_spec.rb'
+ - 'ee/spec/graphql/resolvers/analytics/contribution_analytics/contributions_resolver_spec.rb'
+ - 'ee/spec/lib/compliance_management/compliance_report/commit_loader_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/application_context_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/fix_incorrect_max_seats_used_spec.rb'
+ - 'ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate_spec.rb'
+ - 'ee/spec/lib/gitlab/insights/project_insights_config_spec.rb'
+ - 'ee/spec/lib/gitlab/usage_data_metrics_spec.rb'
+ - 'ee/spec/models/member_spec.rb'
+ - 'ee/spec/requests/api/graphql/project/pipeline/security_report_summary_spec.rb'
+ - 'ee/spec/requests/api/graphql/vulnerabilities/sort_spec.rb'
+ - 'ee/spec/requests/api/related_epic_links_spec.rb'
+ - 'ee/spec/services/app_sec/dast/site_validations/revoke_service_spec.rb'
+ - 'ee/spec/services/ci/retry_pipeline_service_spec.rb'
+ - 'ee/spec/services/elastic/process_bookkeeping_service_spec.rb'
+ - 'ee/spec/services/security/ingestion/ingest_report_slice_service_spec.rb'
+ - 'ee/spec/services/security/vulnerability_counting_service_spec.rb'
+ - 'ee/spec/services/todo_service_spec.rb'
+ - 'ee/spec/support/shared_examples/finders/security/findings_finder_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/graphql/geo/geo_registry_type_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/lib/gitlab/middleware/maintenance_mode_gitlab_ee_instance_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/lib/gitlab/middleware/read_only_gitlab_ee_instance_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/services/build_execute_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/services/search_notes_shared_examples.rb'
+ - 'ee/spec/views/shared/credentials_inventory/ssh_keys/_ssh_key.html.haml_spec.rb'
+ - 'lib/api/api.rb'
+ - 'lib/api/entities/appearance.rb'
+ - 'lib/api/entities/basic_project_details.rb'
+ - 'lib/api/entities/ci/job.rb'
+ - 'lib/api/entities/ci/job_request/dependency.rb'
+ - 'lib/api/entities/ci/lint/result.rb'
+ - 'lib/api/entities/ci/reset_token_result.rb'
+ - 'lib/api/entities/commit_with_link.rb'
+ - 'lib/api/entities/event.rb'
+ - 'lib/api/entities/global_notification_setting.rb'
+ - 'lib/api/entities/group.rb'
+ - 'lib/api/entities/issue_basic.rb'
+ - 'lib/api/entities/label_basic.rb'
+ - 'lib/api/entities/member_access.rb'
+ - 'lib/api/entities/merge_request_basic.rb'
+ - 'lib/api/entities/merge_request_simple.rb'
+ - 'lib/api/entities/milestone.rb'
+ - 'lib/api/entities/ml/mlflow/experiment.rb'
+ - 'lib/api/entities/ml/mlflow/run_info.rb'
+ - 'lib/api/entities/note.rb'
+ - 'lib/api/entities/project.rb'
+ - 'lib/api/entities/project_integration.rb'
+ - 'lib/api/entities/project_label.rb'
+ - 'lib/api/entities/projects/topic.rb'
+ - 'lib/api/entities/public_group_details.rb'
+ - 'lib/api/entities/resource_label_event.rb'
+ - 'lib/api/entities/shared_group_with_project.rb'
+ - 'lib/api/entities/snippet.rb'
+ - 'lib/api/entities/todo.rb'
+ - 'lib/api/entities/tree_object.rb'
+ - 'lib/api/entities/user_basic.rb'
+ - 'lib/api/github/entities.rb'
+ - 'lib/api/group_variables.rb'
+ - 'lib/api/helpers/authentication.rb'
+ - 'lib/api/helpers/container_registry_helpers.rb'
+ - 'lib/api/helpers/snippets_helpers.rb'
+ - 'lib/api/search.rb'
+ - 'lib/atlassian/jira_connect/serializers/repository_entity.rb'
+ - 'lib/backup/database.rb'
+ - 'lib/banzai/filter/autolink_filter.rb'
+ - 'lib/banzai/filter/emoji_filter.rb'
+ - 'lib/banzai/filter/inline_metrics_redactor_filter.rb'
+ - 'lib/banzai/filter/markdown_post_escape_filter.rb'
+ - 'lib/banzai/filter/references/abstract_reference_filter.rb'
+ - 'lib/banzai/filter/spaced_link_filter.rb'
+ - 'lib/banzai/issuable_extractor.rb'
+ - 'lib/container_registry/client.rb'
+ - 'lib/gem_extensions/active_record/disable_joins/associations/association_scope.rb'
+ - 'lib/gitlab/background_migration/backfill_project_feature_package_registry_access_level.rb'
+ - 'lib/gitlab/ci/build/artifacts/path.rb'
+ - 'lib/gitlab/ci/config/normalizer.rb'
+ - 'lib/gitlab/ci/reports/accessibility_reports.rb'
+ - 'lib/gitlab/ci/reports/test_suite.rb'
+ - 'lib/gitlab/ci/secure_files/mobile_provision.rb'
+ - 'lib/gitlab/cleanup/orphan_job_artifact_files.rb'
+ - 'lib/gitlab/cleanup/project_upload_file_finder.rb'
+ - 'lib/gitlab/config/entry/composable_array.rb'
+ - 'lib/gitlab/config/entry/configurable.rb'
+ - 'lib/gitlab/database/background_migration/batched_migration.rb'
+ - 'lib/gitlab/database/bulk_update.rb'
+ - 'lib/gitlab/database/load_balancing/service_discovery/sampler.rb'
+ - 'lib/gitlab/database/read_only_relation.rb'
+ - 'lib/gitlab/database/reindexing.rb'
+ - 'lib/gitlab/database/schema_cache_with_renamed_table.rb'
+ - 'lib/gitlab/dependency_linker/base_linker.rb'
+ - 'lib/gitlab/dependency_linker/go_mod_linker.rb'
+ - 'lib/gitlab/dependency_linker/go_sum_linker.rb'
+ - 'lib/gitlab/diff/inline_diff_markdown_marker.rb'
+ - 'lib/gitlab/gfm/uploads_rewriter.rb'
+ - 'lib/gitlab/git/merge_base.rb'
+ - 'lib/gitlab/github_import/object_counter.rb'
+ - 'lib/gitlab/grape_logging/formatters/lograge_with_timestamp.rb'
+ - 'lib/gitlab/health_checks/probes/collection.rb'
+ - 'lib/gitlab/health_checks/server.rb'
+ - 'lib/gitlab/import_export/members_mapper.rb'
+ - 'lib/gitlab/metrics/dashboard/stages/variable_endpoint_inserter.rb'
+ - 'lib/gitlab/metrics/dashboard/transformers/yml/v1/prometheus_metrics.rb'
+ - 'lib/gitlab/metrics/dashboard/validator/custom_formats.rb'
+ - 'lib/gitlab/metrics/exporter/base_exporter.rb'
+ - 'lib/gitlab/pagination/gitaly_keyset_pager.rb'
+ - 'lib/gitlab/safe_request_store.rb'
+ - 'lib/gitlab/sidekiq_config.rb'
+ - 'lib/gitlab/sidekiq_daemon/monitor.rb'
+ - 'lib/gitlab/suggestions/commit_message.rb'
+ - 'lib/gitlab/testing/request_inspector_middleware.rb'
+ - 'lib/gitlab/throttle.rb'
+ - 'lib/gitlab/utils/batch_loader.rb'
+ - 'lib/gitlab/utils/merge_hash.rb'
+ - 'lib/google_api/cloud_platform/client.rb'
+ - 'lib/peek/views/gitaly.rb'
+ - 'lib/security/ci_configuration/sast_build_action.rb'
+ - 'lib/tasks/cleanup.rake'
+ - 'lib/tasks/contracts/merge_requests.rake'
+ - 'lib/tasks/contracts/pipeline_schedules.rake'
+ - 'lib/tasks/contracts/pipelines.rake'
+ - 'lib/tasks/frontend.rake'
+ - 'lib/tasks/gitlab/background_migrations.rake'
+ - 'lib/tasks/gitlab/bulk_add_permission.rake'
+ - 'lib/tasks/gitlab/db.rake'
+ - 'lib/tasks/gitlab/external_diffs.rake'
+ - 'lib/tasks/gitlab/gitaly.rake'
+ - 'lib/tasks/gitlab/graphql.rake'
+ - 'lib/tasks/gitlab/metrics_exporter.rake'
+ - 'lib/tasks/gitlab/praefect.rake'
+ - 'lib/tasks/gitlab/seed.rake'
+ - 'lib/tasks/gitlab/seed/group_seed.rake'
+ - 'lib/tasks/gitlab/shell.rake'
+ - 'lib/tasks/gitlab/snippets.rake'
+ - 'lib/tasks/gitlab/two_factor.rake'
+ - 'lib/tasks/gitlab/uploads/sanitize.rake'
+ - 'lib/tasks/gitlab/user_management.rake'
+ - 'lib/tasks/gitlab/workhorse.rake'
+ - 'lib/version_check.rb'
+ - 'qa/qa/runtime/allure_report.rb'
+ - 'qa/qa/service/praefect_manager.rb'
+ - 'qa/qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb'
+ - 'qa/qa/specs/features/api/12_systems/gitaly/praefect_dataloss_spec.rb'
+ - 'qa/qa/support/knapsack_report.rb'
+ - 'qa/qa/support/matchers/eventually_matcher.rb'
+ - 'qa/qa/tools/generate_perf_testdata.rb'
+ - 'qa/qa/tools/long_running_spec_reporter.rb'
+ - 'qa/qa/tools/reliable_report.rb'
+ - 'qa/qa/tools/test_resource_data_processor.rb'
+ - 'qa/tasks/vulnerabilities.rake'
+ - 'scripts/docs_screenshots.rb'
+ - 'scripts/packages/automated_cleanup.rb'
+ - 'scripts/perf/gc/collect_gc_stats.rb'
+ - 'scripts/qa/testcases-check'
+ - 'scripts/review_apps/automated_cleanup.rb'
+ - 'scripts/used-feature-flags'
+ - 'sidekiq_cluster/cli.rb'
+ - 'spec/components/pajamas/button_component_spec.rb'
+ - 'spec/components/previews/pajamas/banner_component_preview.rb'
+ - 'spec/controllers/concerns/confirm_email_warning_spec.rb'
+ - 'spec/controllers/concerns/routable_actions_spec.rb'
+ - 'spec/controllers/groups/children_controller_spec.rb'
+ - 'spec/controllers/projects/labels_controller_spec.rb'
+ - 'spec/factories/alert_management/alerts.rb'
+ - 'spec/factories/ci/builds.rb'
+ - 'spec/factories/ci/job_artifacts.rb'
+ - 'spec/factories/ci/pipelines.rb'
+ - 'spec/factories/ci/processable.rb'
+ - 'spec/factories/ci/reports/sbom/reports.rb'
+ - 'spec/factories/ci/runner_namespaces.rb'
+ - 'spec/factories/ci/runner_projects.rb'
+ - 'spec/factories/ci/runners.rb'
+ - 'spec/factories/clusters/clusters.rb'
+ - 'spec/factories/clusters/platforms/kubernetes.rb'
+ - 'spec/factories/clusters/providers/gcp.rb'
+ - 'spec/factories/commit_statuses.rb'
+ - 'spec/factories/container_repositories.rb'
+ - 'spec/factories/deployments.rb'
+ - 'spec/factories/environments.rb'
+ - 'spec/factories/merge_requests.rb'
+ - 'spec/factories/namespaces.rb'
+ - 'spec/factories/packages/debian/distribution.rb'
+ - 'spec/factories/project_group_links.rb'
+ - 'spec/factories/protected_branches.rb'
+ - 'spec/factories/resource_label_events.rb'
+ - 'spec/factories/suggestions.rb'
+ - 'spec/factories/users.rb'
+ - 'spec/features/issuables/issuable_list_spec.rb'
+ - 'spec/features/merge_request/user_suggests_changes_on_diff_spec.rb'
+ - 'spec/fixtures/lib/generators/gitlab/usage_metric_generator/sample_numbers_metric.rb'
+ - 'spec/graphql/features/authorization_spec.rb'
+ - 'spec/graphql/types/base_object_spec.rb'
+ - 'spec/initializers/secret_token_spec.rb'
+ - 'spec/lib/api/helpers/pagination_strategies_spec.rb'
+ - 'spec/lib/backup/database_spec.rb'
+ - 'spec/lib/banzai/filter/audio_link_filter_spec.rb'
+ - 'spec/lib/banzai/filter/video_link_filter_spec.rb'
+ - 'spec/lib/feature_spec.rb'
+ - 'spec/lib/gitlab/auth/saml/user_spec.rb'
+ - 'spec/lib/gitlab/background_migration/cleanup_draft_data_from_faulty_regex_spec.rb'
+ - 'spec/lib/gitlab/background_migration/populate_vulnerability_reads_spec.rb'
+ - 'spec/lib/gitlab/ci/parsers/terraform/tfplan_spec.rb'
+ - 'spec/lib/gitlab/ci/parsers/test/junit_spec.rb'
+ - 'spec/lib/gitlab/ci/pipeline/logger_spec.rb'
+ - 'spec/lib/gitlab/ci/status/composite_spec.rb'
+ - 'spec/lib/gitlab/cleanup/orphan_job_artifact_files_spec.rb'
+ - 'spec/lib/gitlab/database/migration_helpers/restrict_gitlab_schema_spec.rb'
+ - 'spec/lib/gitlab/database/migrations/test_background_runner_spec.rb'
+ - 'spec/lib/gitlab/database/partitioning/detached_partition_dropper_spec.rb'
+ - 'spec/lib/gitlab/database/rename_reserved_paths_migration/v1_spec.rb'
+ - 'spec/lib/gitlab/git_access_wiki_spec.rb'
+ - 'spec/lib/gitlab/graphql/tracers/application_context_tracer_spec.rb'
+ - 'spec/lib/gitlab/health_checks/simple_check_shared.rb'
+ - 'spec/lib/gitlab/http_spec.rb'
+ - 'spec/lib/gitlab/jwt_authenticatable_spec.rb'
+ - 'spec/lib/gitlab/memory/jemalloc_spec.rb'
+ - 'spec/lib/gitlab/middleware/memory_report_spec.rb'
+ - 'spec/lib/gitlab/middleware/speedscope_spec.rb'
+ - 'spec/lib/gitlab/null_request_store_spec.rb'
+ - 'spec/lib/gitlab/pagination/keyset/in_operator_optimization/strategies/record_loader_strategy_spec.rb'
+ - 'spec/lib/gitlab/process_supervisor_spec.rb'
+ - 'spec/lib/gitlab/query_limiting_spec.rb'
+ - 'spec/lib/gitlab/redis/multi_store_spec.rb'
+ - 'spec/lib/gitlab/string_placeholder_replacer_spec.rb'
+ - 'spec/lib/gitlab/string_range_marker_spec.rb'
+ - 'spec/lib/gitlab/string_regex_marker_spec.rb'
+ - 'spec/lib/gitlab/tracking/incident_management_spec.rb'
+ - 'spec/lib/gitlab/usage_data_metrics_spec.rb'
+ - 'spec/lib/gitlab/utils/usage_data_spec.rb'
+ - 'spec/lib/mattermost/session_spec.rb'
+ - 'spec/mailers/notify_spec.rb'
+ - 'spec/migrations/20220107064845_populate_vulnerability_reads_spec.rb'
+ - 'spec/models/active_session_spec.rb'
+ - 'spec/models/ci/build_spec.rb'
+ - 'spec/models/concerns/ci/partitionable/switch_spec.rb'
+ - 'spec/models/concerns/ci/partitionable_spec.rb'
+ - 'spec/models/concerns/each_batch_spec.rb'
+ - 'spec/models/concerns/uniquify_spec.rb'
+ - 'spec/models/container_repository_spec.rb'
+ - 'spec/models/network/graph_spec.rb'
+ - 'spec/models/packages/debian/file_metadatum_spec.rb'
+ - 'spec/requests/api/ci/pipeline_schedules_spec.rb'
+ - 'spec/requests/api/graphql/gitlab_schema_spec.rb'
+ - 'spec/requests/api/internal/container_registry/migration_spec.rb'
+ - 'spec/requests/git_http_spec.rb'
+ - 'spec/requests/projects/google_cloud/deployments_controller_spec.rb'
+ - 'spec/requests/projects/google_cloud/gcp_regions_controller_spec.rb'
+ - 'spec/requests/projects/ml/experiments_controller_spec.rb'
+ - 'spec/services/ci/job_token_scope/add_project_service_spec.rb'
+ - 'spec/services/ci/job_token_scope/remove_project_service_spec.rb'
+ - 'spec/services/ci/pipelines/add_job_service_spec.rb'
+ - 'spec/services/issues/relative_position_rebalancing_service_spec.rb'
+ - 'spec/services/merge_requests/merge_to_ref_service_spec.rb'
+ - 'spec/services/packages/create_event_service_spec.rb'
+ - 'spec/services/projects/lfs_pointers/lfs_object_download_list_service_spec.rb'
+ - 'spec/services/repository_archive_clean_up_service_spec.rb'
+ - 'spec/services/snippets/update_service_spec.rb'
+ - 'spec/spec_helper.rb'
+ - 'spec/support/atlassian/jira_connect/schemata.rb'
+ - 'spec/support/cycle_analytics_helpers/test_generation.rb'
+ - 'spec/support/database/prevent_cross_database_modification.rb'
+ - 'spec/support/graphql/subscriptions/action_cable/mock_action_cable.rb'
+ - 'spec/support/helpers/cycle_analytics_helpers.rb'
+ - 'spec/support/helpers/docs_screenshot_helpers.rb'
+ - 'spec/support/helpers/graphql_helpers.rb'
+ - 'spec/support/helpers/stub_method_calls.rb'
+ - 'spec/support/helpers/stub_metrics.rb'
+ - 'spec/support/matchers/be_n_plus_1_query.rb'
+ - 'spec/support/matchers/event_store.rb'
+ - 'spec/support/matchers/exceed_query_limit.rb'
+ - 'spec/support/matchers/graphql_matchers.rb'
+ - 'spec/support/matchers/issuable_matchers.rb'
+ - 'spec/support/matchers/pagination_matcher.rb'
+ - 'spec/support/matchers/schema_matcher.rb'
+ - 'spec/support/matchers/security_header_matcher.rb'
+ - 'spec/support/shared_contexts/jobs/handling_retried_jobs_shared_context.rb'
+ - 'spec/support/shared_contexts/lib/gitlab/middleware/multipart_shared_contexts.rb'
+ - 'spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb'
+ - 'spec/support/shared_examples/ci/jobs_shared_examples.rb'
+ - 'spec/support/shared_examples/controllers/rate_limited_endpoint_shared_examples.rb'
+ - 'spec/support/shared_examples/features/packages_shared_examples.rb'
+ - 'spec/support/shared_examples/graphql/members_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/database/reestablished_connection_stack_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/diff_file_collections_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/middleware/read_only_gitlab_instance_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/usage_data_counters/code_review_extension_request_examples.rb'
+ - 'spec/support/shared_examples/metrics/active_record_subscriber_shared_examples.rb'
+ - 'spec/support/shared_examples/models/active_record_enum_shared_examples.rb'
+ - 'spec/support/shared_examples/models/cluster_application_core_shared_examples.rb'
+ - 'spec/support/shared_examples/models/diff_positionable_note_shared_examples.rb'
+ - 'spec/support/shared_examples/models/issue_tracker_service_shared_examples.rb'
+ - 'spec/support/shared_examples/models/snippet_shared_examples.rb'
+ - 'spec/support/shared_examples/quick_actions/issuable/issuable_quick_actions_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/composer_packages_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/container_repositories_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/helm_packages_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/npm_packages_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/npm_packages_tags_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/project_statistics_refresh_conflicts_shared_examples.rb'
+ - 'spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb'
+ - 'spec/support/shared_examples/uploaders/object_storage_shared_examples.rb'
+ - 'spec/support/shared_examples/workers/concerns/reenqueuer_shared_examples.rb'
+ - 'spec/tooling/lib/tooling/find_codeowners_spec.rb'
+ - 'spec/tooling/rspec_flaky/config_spec.rb'
+ - 'spec/workers/projects/git_garbage_collect_worker_spec.rb'
+ - 'tooling/danger/specs.rb'
+ - 'tooling/lib/tooling/find_codeowners.rb'
diff --git a/.rubocop_todo/lint/unused_method_argument.yml b/.rubocop_todo/lint/unused_method_argument.yml
new file mode 100644
index 00000000000..8fcad186276
--- /dev/null
+++ b/.rubocop_todo/lint/unused_method_argument.yml
@@ -0,0 +1,656 @@
+---
+# Cop supports --autocorrect.
+Lint/UnusedMethodArgument:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/application_controller.rb'
+ - 'app/controllers/concerns/authenticates_with_two_factor.rb'
+ - 'app/controllers/concerns/creates_commit.rb'
+ - 'app/controllers/concerns/metrics_dashboard.rb'
+ - 'app/controllers/concerns/renders_notes.rb'
+ - 'app/controllers/concerns/send_file_upload.rb'
+ - 'app/controllers/concerns/spammable_actions/captcha_check/common.rb'
+ - 'app/controllers/concerns/wiki_actions.rb'
+ - 'app/controllers/confirmations_controller.rb'
+ - 'app/controllers/import/bitbucket_controller.rb'
+ - 'app/controllers/ldap/omniauth_callbacks_controller.rb'
+ - 'app/controllers/projects/forks_controller.rb'
+ - 'app/finders/issuable_finder/params.rb'
+ - 'app/graphql/mutations/base_mutation.rb'
+ - 'app/graphql/mutations/ci/runner/delete.rb'
+ - 'app/graphql/mutations/concerns/mutations/assignable.rb'
+ - 'app/graphql/mutations/members/groups/bulk_update.rb'
+ - 'app/graphql/mutations/notes/create/base.rb'
+ - 'app/graphql/mutations/notes/create/diff_note.rb'
+ - 'app/graphql/mutations/notes/create/image_diff_note.rb'
+ - 'app/graphql/mutations/timelogs/create.rb'
+ - 'app/graphql/resolvers/base_resolver.rb'
+ - 'app/graphql/resolvers/board_list_issues_resolver.rb'
+ - 'app/graphql/resolvers/branch_commit_resolver.rb'
+ - 'app/graphql/resolvers/ci/runner_groups_resolver.rb'
+ - 'app/graphql/resolvers/ci/runner_platforms_resolver.rb'
+ - 'app/graphql/resolvers/ci/runner_setup_resolver.rb'
+ - 'app/graphql/resolvers/ci/runner_status_resolver.rb'
+ - 'app/graphql/resolvers/ci/test_report_summary_resolver.rb'
+ - 'app/graphql/resolvers/clusters/agent_activity_events_resolver.rb'
+ - 'app/graphql/resolvers/concerns/caching_array_resolver.rb'
+ - 'app/graphql/resolvers/error_tracking/sentry_error_collection_resolver.rb'
+ - 'app/graphql/resolvers/last_commit_resolver.rb'
+ - 'app/graphql/resolvers/merge_request_resolver.rb'
+ - 'app/graphql/resolvers/metadata_resolver.rb'
+ - 'app/graphql/resolvers/project_resolver.rb'
+ - 'app/graphql/resolvers/projects/branch_rules_resolver.rb'
+ - 'app/graphql/resolvers/projects/grafana_integration_resolver.rb'
+ - 'app/graphql/resolvers/release_milestones_resolver.rb'
+ - 'app/graphql/resolvers/users/group_count_resolver.rb'
+ - 'app/graphql/resolvers/users/participants_resolver.rb'
+ - 'app/graphql/resolvers/users_resolver.rb'
+ - 'app/graphql/resolvers/work_items/work_item_discussions_resolver.rb'
+ - 'app/graphql/subscriptions/issuable_updated.rb'
+ - 'app/graphql/subscriptions/notes/base.rb'
+ - 'app/graphql/subscriptions/notes/deleted.rb'
+ - 'app/graphql/types/alert_management/integration_type.rb'
+ - 'app/graphql/types/base_field.rb'
+ - 'app/graphql/types/ci/job_need_union.rb'
+ - 'app/graphql/types/color_type.rb'
+ - 'app/graphql/types/commit_signature_interface.rb'
+ - 'app/graphql/types/date_type.rb'
+ - 'app/graphql/types/design_management/design_type.rb'
+ - 'app/graphql/types/duration_type.rb'
+ - 'app/graphql/types/invitation_interface.rb'
+ - 'app/graphql/types/issuable_type.rb'
+ - 'app/graphql/types/member_interface.rb'
+ - 'app/graphql/types/merge_requests/interacts_with_merge_request.rb'
+ - 'app/graphql/types/noteable_type.rb'
+ - 'app/graphql/types/notes/noteable_interface.rb'
+ - 'app/graphql/types/packages/dependency_link_metadata_type.rb'
+ - 'app/graphql/types/packages/file_metadata_type.rb'
+ - 'app/graphql/types/packages/metadata_type.rb'
+ - 'app/graphql/types/projects/service_type.rb'
+ - 'app/graphql/types/projects/service_type_enum.rb'
+ - 'app/graphql/types/time_type.rb'
+ - 'app/graphql/types/todoable_interface.rb'
+ - 'app/graphql/types/user_interface.rb'
+ - 'app/graphql/types/work_item_id_type.rb'
+ - 'app/graphql/types/work_items/widget_interface.rb'
+ - 'app/helpers/admin/identities_helper.rb'
+ - 'app/helpers/diff_helper.rb'
+ - 'app/helpers/environment_helper.rb'
+ - 'app/helpers/groups/group_members_helper.rb'
+ - 'app/helpers/groups_helper.rb'
+ - 'app/helpers/invite_members_helper.rb'
+ - 'app/helpers/issuables_helper.rb'
+ - 'app/helpers/issues_helper.rb'
+ - 'app/helpers/labels_helper.rb'
+ - 'app/helpers/markup_helper.rb'
+ - 'app/helpers/nav/new_dropdown_helper.rb'
+ - 'app/helpers/projects_helper.rb'
+ - 'app/helpers/releases_helper.rb'
+ - 'app/helpers/routing/groups/members_helper.rb'
+ - 'app/helpers/routing/projects/members_helper.rb'
+ - 'app/helpers/routing/projects_helper.rb'
+ - 'app/helpers/routing/snippets_helper.rb'
+ - 'app/helpers/search_helper.rb'
+ - 'app/helpers/timeboxes_helper.rb'
+ - 'app/helpers/users_helper.rb'
+ - 'app/mailers/emails/merge_requests.rb'
+ - 'app/mailers/emails/releases.rb'
+ - 'app/models/ability.rb'
+ - 'app/models/blob_viewer/auxiliary.rb'
+ - 'app/models/ci/bridge.rb'
+ - 'app/models/ci/build.rb'
+ - 'app/models/ci/build_trace_chunk.rb'
+ - 'app/models/ci/build_trace_chunks/database.rb'
+ - 'app/models/ci/processable.rb'
+ - 'app/models/ci/runner.rb'
+ - 'app/models/concerns/bulk_insert_safe.rb'
+ - 'app/models/concerns/cache_markdown_field.rb'
+ - 'app/models/concerns/ci/partitionable/partitioned_filter.rb'
+ - 'app/models/concerns/cross_database_modification.rb'
+ - 'app/models/concerns/issuable.rb'
+ - 'app/models/concerns/mentionable.rb'
+ - 'app/models/concerns/note_on_diff.rb'
+ - 'app/models/concerns/protected_ref.rb'
+ - 'app/models/concerns/reactive_caching.rb'
+ - 'app/models/concerns/referable.rb'
+ - 'app/models/concerns/spammable.rb'
+ - 'app/models/concerns/subscribable.rb'
+ - 'app/models/concerns/timebox.rb'
+ - 'app/models/design_management/version.rb'
+ - 'app/models/discussion.rb'
+ - 'app/models/external_issue.rb'
+ - 'app/models/group.rb'
+ - 'app/models/integrations/bamboo.rb'
+ - 'app/models/integrations/buildkite.rb'
+ - 'app/models/integrations/discord.rb'
+ - 'app/models/integrations/ewm.rb'
+ - 'app/models/integrations/hangouts_chat.rb'
+ - 'app/models/integrations/jira.rb'
+ - 'app/models/integrations/microsoft_teams.rb'
+ - 'app/models/integrations/mock_ci.rb'
+ - 'app/models/integrations/mock_monitoring.rb'
+ - 'app/models/integrations/prometheus.rb'
+ - 'app/models/integrations/pumble.rb'
+ - 'app/models/integrations/teamcity.rb'
+ - 'app/models/integrations/unify_circuit.rb'
+ - 'app/models/integrations/webex_teams.rb'
+ - 'app/models/internal_id.rb'
+ - 'app/models/issue.rb'
+ - 'app/models/label.rb'
+ - 'app/models/label_note.rb'
+ - 'app/models/merge_request.rb'
+ - 'app/models/milestone_note.rb'
+ - 'app/models/notification_setting.rb'
+ - 'app/models/project.rb'
+ - 'app/models/project_wiki.rb'
+ - 'app/models/protected_branch.rb'
+ - 'app/models/snippet.rb'
+ - 'app/models/state_note.rb'
+ - 'app/models/storage/hashed.rb'
+ - 'app/models/uploads/base.rb'
+ - 'app/models/user.rb'
+ - 'app/models/wiki.rb'
+ - 'app/policies/group_policy.rb'
+ - 'app/presenters/clusterable_presenter.rb'
+ - 'app/presenters/project_presenter.rb'
+ - 'app/serializers/feature_flags_client_serializer.rb'
+ - 'app/serializers/group_child_serializer.rb'
+ - 'app/serializers/group_link/group_group_link_entity.rb'
+ - 'app/serializers/group_link/project_group_link_entity.rb'
+ - 'app/services/applications/create_service.rb'
+ - 'app/services/auth/dependency_proxy_authentication_service.rb'
+ - 'app/services/auto_merge/base_service.rb'
+ - 'app/services/award_emojis/add_service.rb'
+ - 'app/services/boards/base_item_move_service.rb'
+ - 'app/services/boards/lists/base_create_service.rb'
+ - 'app/services/boards/lists/list_service.rb'
+ - 'app/services/boards/lists/update_service.rb'
+ - 'app/services/ci/copy_cross_database_associations_service.rb'
+ - 'app/services/ci/job_artifacts/destroy_batch_service.rb'
+ - 'app/services/ci/pipelines/add_job_service.rb'
+ - 'app/services/ci/queue/pending_builds_strategy.rb'
+ - 'app/services/ci/register_job_service.rb'
+ - 'app/services/ci/update_build_state_service.rb'
+ - 'app/services/concerns/exclusive_lease_guard.rb'
+ - 'app/services/deploy_keys/create_service.rb'
+ - 'app/services/design_management/copy_design_collection/copy_service.rb'
+ - 'app/services/groups/transfer_service.rb'
+ - 'app/services/groups/update_service.rb'
+ - 'app/services/import/gitlab_projects/file_acquisition_strategies/file_upload.rb'
+ - 'app/services/import/gitlab_projects/file_acquisition_strategies/remote_file.rb'
+ - 'app/services/import/gitlab_projects/file_acquisition_strategies/remote_file_s3.rb'
+ - 'app/services/issuable/destroy_service.rb'
+ - 'app/services/issues/export_csv_service.rb'
+ - 'app/services/issues/move_service.rb'
+ - 'app/services/jira/requests/base.rb'
+ - 'app/services/keys/destroy_service.rb'
+ - 'app/services/merge_requests/close_service.rb'
+ - 'app/services/merge_requests/ff_merge_service.rb'
+ - 'app/services/merge_requests/merge_base_service.rb'
+ - 'app/services/metrics/dashboard/grafana_metric_embed_service.rb'
+ - 'app/services/notification_service.rb'
+ - 'app/services/packages/nuget/metadata_extraction_service.rb'
+ - 'app/services/projects/base_move_relations_service.rb'
+ - 'app/services/projects/hashed_storage/base_attachment_service.rb'
+ - 'app/services/projects/lfs_pointers/lfs_download_service.rb'
+ - 'app/services/projects/open_issues_count_service.rb'
+ - 'app/services/prometheus/proxy_service.rb'
+ - 'app/services/protected_refs/access_level_params.rb'
+ - 'app/services/repositories/base_service.rb'
+ - 'app/services/system_notes/incidents_service.rb'
+ - 'app/services/web_hooks/admin_destroy_service.rb'
+ - 'app/services/work_items/update_service.rb'
+ - 'app/uploaders/file_uploader.rb'
+ - 'app/uploaders/gitlab_uploader.rb'
+ - 'app/uploaders/records_uploads.rb'
+ - 'app/validators/cron_freeze_period_timezone_validator.rb'
+ - 'app/validators/cron_timezone_validator.rb'
+ - 'app/validators/cron_validator.rb'
+ - 'app/validators/gitlab/zoom_url_validator.rb'
+ - 'app/validators/iso8601_date_validator.rb'
+ - 'app/workers/ci/delete_objects_worker.rb'
+ - 'app/workers/concerns/worker_attributes.rb'
+ - 'app/workers/concerns/worker_context.rb'
+ - 'app/workers/database/batched_background_migration/execution_worker.rb'
+ - 'app/workers/detect_repository_languages_worker.rb'
+ - 'app/workers/environments/auto_stop_worker.rb'
+ - 'app/workers/gitlab/jira_import/import_issue_worker.rb'
+ - 'app/workers/issues/rebalancing_worker.rb'
+ - 'app/workers/personal_access_tokens/expired_notification_worker.rb'
+ - 'app/workers/personal_access_tokens/expiring_worker.rb'
+ - 'app/workers/process_commit_worker.rb'
+ - 'app/workers/projects/inactive_projects_deletion_cron_worker.rb'
+ - 'app/workers/projects/refresh_build_artifacts_size_statistics_worker.rb'
+ - 'config/initializers/00_active_record_disable_joins.rb'
+ - 'config/initializers/active_record_preloader.rb'
+ - 'config/initializers/active_record_table_definition.rb'
+ - 'config/initializers/forbid_sidekiq_in_transactions.rb'
+ - 'config/initializers/rspec_profiling.rb'
+ - 'config/object_store_settings.rb'
+ - 'ee/app/controllers/ee/projects/protected_branches_controller.rb'
+ - 'ee/app/controllers/groups/omniauth_callbacks_controller.rb'
+ - 'ee/app/controllers/groups/roadmap_controller.rb'
+ - 'ee/app/graphql/mutations/dast/profiles/run.rb'
+ - 'ee/app/graphql/mutations/dast/profiles/update.rb'
+ - 'ee/app/graphql/mutations/dast_scanner_profiles/delete.rb'
+ - 'ee/app/graphql/mutations/dast_scanner_profiles/update.rb'
+ - 'ee/app/graphql/mutations/dast_site_profiles/delete.rb'
+ - 'ee/app/graphql/mutations/dast_site_profiles/update.rb'
+ - 'ee/app/graphql/mutations/incident_management/escalation_policy/create.rb'
+ - 'ee/app/graphql/mutations/instance_security_dashboard/remove_project.rb'
+ - 'ee/app/graphql/mutations/iterations/create.rb'
+ - 'ee/app/graphql/mutations/security/finding/revert_to_detected.rb'
+ - 'ee/app/graphql/resolvers/boards/board_list_epics_resolver.rb'
+ - 'ee/app/graphql/resolvers/ci/code_coverage_summary_resolver.rb'
+ - 'ee/app/graphql/resolvers/epics/default_project_for_issue_creation_resolver.rb'
+ - 'ee/app/graphql/resolvers/epics_resolver.rb'
+ - 'ee/app/graphql/resolvers/incident_management/oncall_shifts_resolver.rb'
+ - 'ee/app/graphql/resolvers/instance_security_dashboard_resolver.rb'
+ - 'ee/app/graphql/resolvers/path_locks_resolver.rb'
+ - 'ee/app/graphql/resolvers/timebox_report_resolver.rb'
+ - 'ee/app/graphql/resolvers/vulnerabilities/container_images_resolver.rb'
+ - 'ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb'
+ - 'ee/app/graphql/resolvers/vulnerabilities_base_resolver.rb'
+ - 'ee/app/graphql/types/security_orchestration/security_policy_source_type.rb'
+ - 'ee/app/graphql/types/vulnerability_detail_type.rb'
+ - 'ee/app/graphql/types/vulnerability_location_type.rb'
+ - 'ee/app/helpers/ee/groups_helper.rb'
+ - 'ee/app/helpers/ee/lock_helper.rb'
+ - 'ee/app/helpers/trial_status_widget_helper.rb'
+ - 'ee/app/models/boards/epic_board.rb'
+ - 'ee/app/models/burndown.rb'
+ - 'ee/app/models/concerns/elastic/application_versioned_search.rb'
+ - 'ee/app/models/concerns/geo/blob_replicator_strategy.rb'
+ - 'ee/app/models/concerns/geo/repository_replicator_strategy.rb'
+ - 'ee/app/models/concerns/geo/verifiable_replicator.rb'
+ - 'ee/app/models/concerns/geo/verification_state.rb'
+ - 'ee/app/models/ee/iteration.rb'
+ - 'ee/app/models/ee/member.rb'
+ - 'ee/app/models/ee/project.rb'
+ - 'ee/app/models/group_wiki.rb'
+ - 'ee/app/models/iteration_note.rb'
+ - 'ee/app/replicators/geo/container_repository_replicator.rb'
+ - 'ee/app/replicators/geo/pipeline_replicator.rb'
+ - 'ee/app/serializers/analytics/cycle_analytics/value_stream_errors_serializer.rb'
+ - 'ee/app/services/app_sec/dast/scans/run_service.rb'
+ - 'ee/app/services/audit_events/runners_token_audit_event_service.rb'
+ - 'ee/app/services/boards/epic_lists/update_service.rb'
+ - 'ee/app/services/concerns/incident_management/oncall_rotations/shared_rotation_logic.rb'
+ - 'ee/app/services/ee/merge_requests/merge_base_service.rb'
+ - 'ee/app/services/epics/related_epic_links/create_service.rb'
+ - 'ee/app/services/epics/transfer_service.rb'
+ - 'ee/app/services/group_saml/identity/destroy_service.rb'
+ - 'ee/app/services/projects/update_mirror_service.rb'
+ - 'ee/app/services/vulnerabilities/finding_dismiss_service.rb'
+ - 'ee/app/validators/vulnerabilities/cvss_vector_validator.rb'
+ - 'ee/db/fixtures/development/20_burndown.rb'
+ - 'ee/lib/audit/compliance_framework_changes_auditor.rb'
+ - 'ee/lib/compliance_management/compliance_report/commit_loader.rb'
+ - 'ee/lib/ee/api/ci/helpers/runner.rb'
+ - 'ee/lib/ee/api/entities/project.rb'
+ - 'ee/lib/ee/backup/repositories.rb'
+ - 'ee/lib/ee/banzai/reference_parser/iteration_parser.rb'
+ - 'ee/lib/ee/gitlab/auth/ldap/sync/proxy.rb'
+ - 'ee/lib/ee/gitlab/geo_git_access.rb'
+ - 'ee/lib/ee/gitlab/tracking.rb'
+ - 'ee/lib/elastic/as_json.rb'
+ - 'ee/lib/elastic/latest/issue_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/merge_request_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/milestone_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/note_class_proxy.rb'
+ - 'ee/lib/elastic/latest/note_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/project_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/repository_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/snippet_class_proxy.rb'
+ - 'ee/lib/elastic/latest/snippet_instance_proxy.rb'
+ - 'ee/lib/elastic/latest/user_instance_proxy.rb'
+ - 'ee/lib/gitlab/audit/events/preloader.rb'
+ - 'ee/lib/gitlab/elastic/elasticsearch_enabled_cache.rb'
+ - 'ee/lib/gitlab/elastic/indexer.rb'
+ - 'ee/lib/gitlab/elastic/snippet_search_results.rb'
+ - 'ee/lib/gitlab/geo.rb'
+ - 'ee/lib/gitlab/geo/log_cursor/events/base_event.rb'
+ - 'ee/lib/gitlab/geo/replicator.rb'
+ - 'ee/lib/gitlab/license_scanning/base_scanner.rb'
+ - 'ee/lib/gitlab/package_metadata/connector/gcp.rb'
+ - 'ee/lib/gitlab/zoekt/search_results.rb'
+ - 'ee/lib/tasks/gitlab/elastic.rake'
+ - 'ee/spec/features/boards/swimlanes/epics_swimlanes_filtering_spec.rb'
+ - 'ee/spec/features/groups/group_roadmap_spec.rb'
+ - 'ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb'
+ - 'ee/spec/helpers/ee/integrations_helper_spec.rb'
+ - 'ee/spec/lib/ee/api/helpers/members_helpers_spec.rb'
+ - 'ee/spec/lib/ee/api/helpers/notes_helpers_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/drop_invalid_remediations_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/background_migration/migrate_vulnerabilities_feedback_to_vulnerabilities_state_transition_spec.rb'
+ - 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
+ - 'ee/spec/lib/gitlab/patch/geo_database_tasks_spec.rb'
+ - 'ee/spec/requests/api/project_import_spec.rb'
+ - 'ee/spec/services/ee/resource_events/merge_into_notes_service_spec.rb'
+ - 'ee/spec/services/geo/repository_verification_primary_service_spec.rb'
+ - 'ee/spec/support/helpers/ee/geo_helpers.rb'
+ - 'ee/spec/support/helpers/ee/migrations_helpers.rb'
+ - 'lib/api/concerns/packages/nuget_endpoints.rb'
+ - 'lib/api/entities/basic_project_details.rb'
+ - 'lib/api/entities/entity_helpers.rb'
+ - 'lib/api/entities/project.rb'
+ - 'lib/api/groups.rb'
+ - 'lib/api/helpers.rb'
+ - 'lib/api/helpers/notes_helpers.rb'
+ - 'lib/api/merge_requests.rb'
+ - 'lib/api/projects_relation_builder.rb'
+ - 'lib/api/search.rb'
+ - 'lib/atlassian/jira_connect/client.rb'
+ - 'lib/backup/database.rb'
+ - 'lib/backup/files.rb'
+ - 'lib/backup/gitaly_backup.rb'
+ - 'lib/banzai/filter/playable_link_filter.rb'
+ - 'lib/banzai/filter/references/abstract_reference_filter.rb'
+ - 'lib/banzai/filter/references/commit_range_reference_filter.rb'
+ - 'lib/banzai/filter/references/design_reference_filter.rb'
+ - 'lib/banzai/filter/references/external_issue_reference_filter.rb'
+ - 'lib/banzai/filter/references/feature_flag_reference_filter.rb'
+ - 'lib/banzai/filter/references/label_reference_filter.rb'
+ - 'lib/banzai/filter/references/milestone_reference_filter.rb'
+ - 'lib/banzai/filter/references/project_reference_filter.rb'
+ - 'lib/banzai/filter/references/reference_cache.rb'
+ - 'lib/banzai/filter/references/user_reference_filter.rb'
+ - 'lib/banzai/reference_parser/alert_parser.rb'
+ - 'lib/banzai/reference_parser/base_parser.rb'
+ - 'lib/banzai/reference_parser/commit_parser.rb'
+ - 'lib/banzai/reference_parser/commit_range_parser.rb'
+ - 'lib/banzai/reference_parser/external_issue_parser.rb'
+ - 'lib/banzai/reference_parser/feature_flag_parser.rb'
+ - 'lib/banzai/reference_parser/issuable_parser.rb'
+ - 'lib/banzai/reference_parser/label_parser.rb'
+ - 'lib/banzai/reference_parser/mentioned_user_parser.rb'
+ - 'lib/banzai/reference_parser/milestone_parser.rb'
+ - 'lib/banzai/reference_parser/project_parser.rb'
+ - 'lib/banzai/reference_parser/user_parser.rb'
+ - 'lib/bitbucket_server/client.rb'
+ - 'lib/bulk_imports/clients/graphql.rb'
+ - 'lib/bulk_imports/projects/pipelines/snippets_repository_pipeline.rb'
+ - 'lib/declarative_enum.rb'
+ - 'lib/error_tracking/sentry_client.rb'
+ - 'lib/gitlab/analytics/cycle_analytics/stage_events/stage_event.rb'
+ - 'lib/gitlab/api_authentication/token_resolver.rb'
+ - 'lib/gitlab/app_text_logger.rb'
+ - 'lib/gitlab/asciidoc/syntax_highlighter/html_pipeline_adapter.rb'
+ - 'lib/gitlab/auth/database/authentication.rb'
+ - 'lib/gitlab/auth/ldap/access.rb'
+ - 'lib/gitlab/auth/ldap/adapter.rb'
+ - 'lib/gitlab/background_migration/backfill_ci_queuing_tables.rb'
+ - 'lib/gitlab/background_migration/backfill_project_settings.rb'
+ - 'lib/gitlab/background_migration/batching_strategies/backfill_project_namespace_per_group_batching_strategy.rb'
+ - 'lib/gitlab/background_migration/batching_strategies/loose_index_scan_batching_strategy.rb'
+ - 'lib/gitlab/background_migration/cleanup_orphaned_routes.rb'
+ - 'lib/gitlab/background_migration/job_coordinator.rb'
+ - 'lib/gitlab/background_migration/migrate_personal_namespace_project_maintainer_to_owner.rb'
+ - 'lib/gitlab/background_migration/project_namespaces/backfill_project_namespaces.rb'
+ - 'lib/gitlab/bitbucket_import/importer.rb'
+ - 'lib/gitlab/cache/helpers.rb'
+ - 'lib/gitlab/cache/metrics.rb'
+ - 'lib/gitlab/ci/ansi2html.rb'
+ - 'lib/gitlab/ci/build/artifacts/adapters/gzip_stream.rb'
+ - 'lib/gitlab/ci/build/artifacts/metadata.rb'
+ - 'lib/gitlab/ci/build/policy/changes.rb'
+ - 'lib/gitlab/ci/build/policy/kubernetes.rb'
+ - 'lib/gitlab/ci/build/policy/refs.rb'
+ - 'lib/gitlab/ci/build/policy/variables.rb'
+ - 'lib/gitlab/ci/config/entry/hidden.rb'
+ - 'lib/gitlab/ci/config/entry/inherit/default.rb'
+ - 'lib/gitlab/ci/parsers/test/junit.rb'
+ - 'lib/gitlab/ci/pipeline/expression/lexeme/null.rb'
+ - 'lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb'
+ - 'lib/gitlab/ci/pipeline/expression/lexeme/string.rb'
+ - 'lib/gitlab/ci/status/bridge/play.rb'
+ - 'lib/gitlab/ci/status/build/action.rb'
+ - 'lib/gitlab/ci/status/build/cancelable.rb'
+ - 'lib/gitlab/ci/status/build/canceled.rb'
+ - 'lib/gitlab/ci/status/build/created.rb'
+ - 'lib/gitlab/ci/status/build/erased.rb'
+ - 'lib/gitlab/ci/status/build/failed.rb'
+ - 'lib/gitlab/ci/status/build/failed_allowed.rb'
+ - 'lib/gitlab/ci/status/build/manual.rb'
+ - 'lib/gitlab/ci/status/build/pending.rb'
+ - 'lib/gitlab/ci/status/build/play.rb'
+ - 'lib/gitlab/ci/status/build/retried.rb'
+ - 'lib/gitlab/ci/status/build/retryable.rb'
+ - 'lib/gitlab/ci/status/build/scheduled.rb'
+ - 'lib/gitlab/ci/status/build/skipped.rb'
+ - 'lib/gitlab/ci/status/build/stop.rb'
+ - 'lib/gitlab/ci/status/build/unschedule.rb'
+ - 'lib/gitlab/ci/status/build/waiting_for_approval.rb'
+ - 'lib/gitlab/ci/status/pipeline/blocked.rb'
+ - 'lib/gitlab/ci/status/pipeline/delayed.rb'
+ - 'lib/gitlab/ci/status/stage/play_manual.rb'
+ - 'lib/gitlab/ci/status/success_warning.rb'
+ - 'lib/gitlab/ci/trace.rb'
+ - 'lib/gitlab/cleanup/orphan_job_artifact_files.rb'
+ - 'lib/gitlab/cleanup/orphan_job_artifact_files_batch.rb'
+ - 'lib/gitlab/cleanup/project_upload_file_finder.rb'
+ - 'lib/gitlab/cluster/puma_worker_killer_observer.rb'
+ - 'lib/gitlab/config/entry/composable_hash.rb'
+ - 'lib/gitlab/config/entry/node.rb'
+ - 'lib/gitlab/config/entry/validators.rb'
+ - 'lib/gitlab/conflict/file_collection.rb'
+ - 'lib/gitlab/data_builder/note.rb'
+ - 'lib/gitlab/database.rb'
+ - 'lib/gitlab/database/async_indexes/migration_helpers.rb'
+ - 'lib/gitlab/database/batch_count.rb'
+ - 'lib/gitlab/database/date_time.rb'
+ - 'lib/gitlab/database/each_database.rb'
+ - 'lib/gitlab/database/load_balancing/connection_proxy.rb'
+ - 'lib/gitlab/database/load_balancing/primary_host.rb'
+ - 'lib/gitlab/database/load_balancing/session.rb'
+ - 'lib/gitlab/database/lock_writes_manager.rb'
+ - 'lib/gitlab/database/migrations/instrumentation.rb'
+ - 'lib/gitlab/database/migrations/lock_retries_helpers.rb'
+ - 'lib/gitlab/database/migrations/reestablished_connection_stack.rb'
+ - 'lib/gitlab/database/migrations/runner.rb'
+ - 'lib/gitlab/database/partitioning_migration_helpers/table_management_helpers.rb'
+ - 'lib/gitlab/database/query_analyzers/base.rb'
+ - 'lib/gitlab/database/query_analyzers/prevent_cross_database_modification.rb'
+ - 'lib/gitlab/database/rename_table_helpers.rb'
+ - 'lib/gitlab/database_importers/common_metrics/importer.rb'
+ - 'lib/gitlab/dependency_linker/base_linker.rb'
+ - 'lib/gitlab/diff/file_collection/merge_request_diff_base.rb'
+ - 'lib/gitlab/diff/line.rb'
+ - 'lib/gitlab/encoding_helper.rb'
+ - 'lib/gitlab/error_tracking/error_repository/active_record_strategy.rb'
+ - 'lib/gitlab/fogbugz_import/importer.rb'
+ - 'lib/gitlab/git/commit_stats.rb'
+ - 'lib/gitlab/git/conflict/parser.rb'
+ - 'lib/gitlab/git/cross_repo.rb'
+ - 'lib/gitlab/git/ref.rb'
+ - 'lib/gitlab/gitaly_client.rb'
+ - 'lib/gitlab/gitaly_client/commit_service.rb'
+ - 'lib/gitlab/gitaly_client/operation_service.rb'
+ - 'lib/gitlab/github_gists_import/representation/gist.rb'
+ - 'lib/gitlab/github_import/importer/pull_requests/review_requests_importer.rb'
+ - 'lib/gitlab/github_import/importer/pull_requests_reviews_importer.rb'
+ - 'lib/gitlab/github_import/representation/diff_note.rb'
+ - 'lib/gitlab/github_import/representation/issue_event.rb'
+ - 'lib/gitlab/github_import/representation/lfs_object.rb'
+ - 'lib/gitlab/github_import/representation/note.rb'
+ - 'lib/gitlab/github_import/representation/pull_request.rb'
+ - 'lib/gitlab/github_import/representation/pull_request_review.rb'
+ - 'lib/gitlab/github_import/representation/user.rb'
+ - 'lib/gitlab/graphql/authorize/connection_filter_extension.rb'
+ - 'lib/gitlab/graphql/board/issues_connection_extension.rb'
+ - 'lib/gitlab/graphql/calls_gitaly/field_extension.rb'
+ - 'lib/gitlab/graphql/connection_redaction.rb'
+ - 'lib/gitlab/graphql/extensions/externally_paginated_array_extension.rb'
+ - 'lib/gitlab/graphql/generic_tracing.rb'
+ - 'lib/gitlab/graphql/lazy.rb'
+ - 'lib/gitlab/graphql/project/dast_profile_connection_extension.rb'
+ - 'lib/gitlab/graphql/query_analyzers/ast/logger_analyzer.rb'
+ - 'lib/gitlab/graphql/tracers/timer_tracer.rb'
+ - 'lib/gitlab/hashed_storage/rake_helper.rb'
+ - 'lib/gitlab/hook_data/subgroup_builder.rb'
+ - 'lib/gitlab/import_export/after_export_strategies/base_after_export_strategy.rb'
+ - 'lib/gitlab/import_export/fast_hash_serializer.rb'
+ - 'lib/gitlab/issuable_sorter.rb'
+ - 'lib/gitlab/json.rb'
+ - 'lib/gitlab/json_cache.rb'
+ - 'lib/gitlab/lfs/client.rb'
+ - 'lib/gitlab/markdown_cache/redis/extension.rb'
+ - 'lib/gitlab/memory/diagnostic_reports_logger.rb'
+ - 'lib/gitlab/metrics/null_metric.rb'
+ - 'lib/gitlab/metrics/subscribers/action_cable.rb'
+ - 'lib/gitlab/metrics/subscribers/rails_cache.rb'
+ - 'lib/gitlab/null_request_store.rb'
+ - 'lib/gitlab/optimistic_locking.rb'
+ - 'lib/gitlab/otp_key_rotator.rb'
+ - 'lib/gitlab/project_search_results.rb'
+ - 'lib/gitlab/prometheus/queries/query_additional_metrics.rb'
+ - 'lib/gitlab/quick_actions/issue_and_merge_request_actions.rb'
+ - 'lib/gitlab/redis/multi_store.rb'
+ - 'lib/gitlab/repository_cache.rb'
+ - 'lib/gitlab/repository_cache_adapter.rb'
+ - 'lib/gitlab/repository_hash_cache.rb'
+ - 'lib/gitlab/repository_set_cache.rb'
+ - 'lib/gitlab/safe_request_loader.rb'
+ - 'lib/gitlab/safe_request_store.rb'
+ - 'lib/gitlab/sanitizers/exif.rb'
+ - 'lib/gitlab/search_results.rb'
+ - 'lib/gitlab/setup_helper.rb'
+ - 'lib/gitlab/sidekiq_logging/json_formatter.rb'
+ - 'lib/gitlab/sidekiq_logging/structured_logger.rb'
+ - 'lib/gitlab/sidekiq_middleware/arguments_logger.rb'
+ - 'lib/gitlab/sidekiq_middleware/batch_loader.rb'
+ - 'lib/gitlab/sidekiq_middleware/duplicate_jobs/client.rb'
+ - 'lib/gitlab/sidekiq_middleware/duplicate_jobs/duplicate_job.rb'
+ - 'lib/gitlab/sidekiq_middleware/duplicate_jobs/server.rb'
+ - 'lib/gitlab/sidekiq_middleware/extra_done_log_metadata.rb'
+ - 'lib/gitlab/sidekiq_middleware/instrumentation_logger.rb'
+ - 'lib/gitlab/sidekiq_middleware/query_analyzer.rb'
+ - 'lib/gitlab/sidekiq_middleware/request_store_middleware.rb'
+ - 'lib/gitlab/sidekiq_middleware/size_limiter/client.rb'
+ - 'lib/gitlab/sidekiq_middleware/size_limiter/server.rb'
+ - 'lib/gitlab/sidekiq_status/server_middleware.rb'
+ - 'lib/gitlab/sidekiq_versioning/middleware.rb'
+ - 'lib/gitlab/slash_commands/incident_management/incident_command.rb'
+ - 'lib/gitlab/slash_commands/presenters/issue_new.rb'
+ - 'lib/gitlab/snippet_search_results.rb'
+ - 'lib/gitlab/string_placeholder_replacer.rb'
+ - 'lib/gitlab/template/dockerfile_template.rb'
+ - 'lib/gitlab/template/gitignore_template.rb'
+ - 'lib/gitlab/template/gitlab_ci_yml_template.rb'
+ - 'lib/gitlab/template/issue_template.rb'
+ - 'lib/gitlab/template/merge_request_template.rb'
+ - 'lib/gitlab/template/metrics_dashboard_template.rb'
+ - 'lib/gitlab/template_parser/ast.rb'
+ - 'lib/gitlab/testing/request_blocker_middleware.rb'
+ - 'lib/gitlab/testing/robots_blocker_middleware.rb'
+ - 'lib/gitlab/tracking.rb'
+ - 'lib/gitlab/untrusted_regexp/ruby_syntax.rb'
+ - 'lib/gitlab/usage/metrics/aggregates/sources/redis_hll.rb'
+ - 'lib/gitlab/usage/metrics/names_suggestions/generator.rb'
+ - 'lib/gitlab/usage_data.rb'
+ - 'lib/gitlab/usage_data_non_sql_metrics.rb'
+ - 'lib/gitlab/usage_data_queries.rb'
+ - 'lib/gitlab/user_access_snippet.rb'
+ - 'lib/gitlab/utils/safe_inline_hash.rb'
+ - 'lib/gitlab/utils/usage_data.rb'
+ - 'lib/gitlab/verify/batch_verifier.rb'
+ - 'lib/gitlab/view/presenter/base.rb'
+ - 'lib/gitlab/web_ide/config.rb'
+ - 'lib/gitlab/work_items/work_item_hierarchy.rb'
+ - 'lib/kramdown/parser/atlassian_document_format.rb'
+ - 'lib/tasks/gems.rake'
+ - 'lib/tasks/gettext.rake'
+ - 'lib/tasks/gitlab/graphql.rake'
+ - 'metrics_server/metrics_server.rb'
+ - 'qa/qa/page/project/settings/ci_variables.rb'
+ - 'qa/qa/page/project/settings/monitor.rb'
+ - 'qa/qa/resource/base.rb'
+ - 'qa/qa/resource/design.rb'
+ - 'qa/qa/scenario/template.rb'
+ - 'qa/qa/service/kubernetes_cluster.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb'
+ - 'qa/qa/support/wait_for_requests.rb'
+ - 'qa/spec/resource/base_spec.rb'
+ - 'rubocop/cop/gitlab/finder_with_find_by.rb'
+ - 'rubocop/cop/migration/safer_boolean_column.rb'
+ - 'scripts/rubocop-parse'
+ - 'scripts/static-analysis'
+ - 'spec/components/pajamas/concerns/checkbox_radio_label_with_help_text_spec.rb'
+ - 'spec/components/pajamas/concerns/checkbox_radio_options_spec.rb'
+ - 'spec/controllers/concerns/issuable_actions_spec.rb'
+ - 'spec/controllers/groups/registry/repositories_controller_spec.rb'
+ - 'spec/controllers/projects/error_tracking/projects_controller_spec.rb'
+ - 'spec/features/profiles/user_edit_profile_spec.rb'
+ - 'spec/features/projects/commits/user_browses_commits_spec.rb'
+ - 'spec/graphql/resolvers/base_resolver_spec.rb'
+ - 'spec/graphql/resolvers/concerns/looks_ahead_spec.rb'
+ - 'spec/graphql/types/base_field_spec.rb'
+ - 'spec/graphql/types/base_object_spec.rb'
+ - 'spec/helpers/markup_helper_spec.rb'
+ - 'spec/initializers/rack_multipart_patch_spec.rb'
+ - 'spec/lib/banzai/object_renderer_spec.rb'
+ - 'spec/lib/banzai/reference_parser/base_parser_spec.rb'
+ - 'spec/lib/gitlab/auth_spec.rb'
+ - 'spec/lib/gitlab/background_migration/batched_migration_job_spec.rb'
+ - 'spec/lib/gitlab/background_migration/recalculate_vulnerabilities_occurrences_uuid_spec.rb'
+ - 'spec/lib/gitlab/background_migration/remove_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/lib/gitlab/background_migration/remove_occurrence_pipelines_and_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/lib/gitlab/background_migration/set_correct_vulnerability_state_spec.rb'
+ - 'spec/lib/gitlab/background_migration/truncate_overlong_vulnerability_html_titles_spec.rb'
+ - 'spec/lib/gitlab/cache/request_cache_spec.rb'
+ - 'spec/lib/gitlab/middleware/same_site_cookies_spec.rb'
+ - 'spec/lib/gitlab/otp_key_rotator_spec.rb'
+ - 'spec/lib/gitlab/path_regex_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/duplicate_jobs/server_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/worker_context/server_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware_spec.rb'
+ - 'spec/lib/gitlab/url_blocker_spec.rb'
+ - 'spec/mailers/emails/service_desk_spec.rb'
+ - 'spec/migrations/20211018152654_schedule_remove_duplicate_vulnerabilities_findings3_spec.rb'
+ - 'spec/migrations/20211116111644_schedule_remove_occurrence_pipelines_and_duplicate_vulnerabilities_findings_spec.rb'
+ - 'spec/migrations/20211207135331_schedule_recalculate_uuid_on_vulnerabilities_occurrences4_spec.rb'
+ - 'spec/models/concerns/from_set_operator_spec.rb'
+ - 'spec/models/concerns/redis_cacheable_spec.rb'
+ - 'spec/policies/resource_state_event_policy_spec.rb'
+ - 'spec/requests/api/graphql/boards/board_list_issues_query_spec.rb'
+ - 'spec/requests/api/graphql/gitlab_schema_spec.rb'
+ - 'spec/requests/api/graphql/project/milestones_spec.rb'
+ - 'spec/requests/api/helpers_spec.rb'
+ - 'spec/requests/api/personal_access_tokens_spec.rb'
+ - 'spec/requests/import/gitlab_projects_controller_spec.rb'
+ - 'spec/services/concerns/rate_limited_service_spec.rb'
+ - 'spec/services/git/wiki_push_service_spec.rb'
+ - 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_spec.rb'
+ - 'spec/services/lfs/push_service_spec.rb'
+ - 'spec/services/projects/transfer_service_spec.rb'
+ - 'spec/support/database/prevent_cross_joins.rb'
+ - 'spec/support/graphql/subscriptions/action_cable/mock_action_cable.rb'
+ - 'spec/support/helpers/cycle_analytics_helpers.rb'
+ - 'spec/support/helpers/database/multiple_databases_helpers.rb'
+ - 'spec/support/helpers/database/table_schema_helpers.rb'
+ - 'spec/support/helpers/design_management_test_helpers.rb'
+ - 'spec/support/helpers/devise_helpers.rb'
+ - 'spec/support/helpers/feature_flag_helpers.rb'
+ - 'spec/support/helpers/gitaly_setup.rb'
+ - 'spec/support/helpers/graphql_helpers.rb'
+ - 'spec/support/helpers/migrations_helpers.rb'
+ - 'spec/support/helpers/notification_helpers.rb'
+ - 'spec/support/helpers/query_recorder.rb'
+ - 'spec/support/helpers/rack_attack_spec_helpers.rb'
+ - 'spec/support/helpers/redis_commands/recorder.rb'
+ - 'spec/support/helpers/redis_without_keys.rb'
+ - 'spec/support/helpers/repo_helpers.rb'
+ - 'spec/support/helpers/stub_feature_flags.rb'
+ - 'spec/support/helpers/stub_member.rb'
+ - 'spec/support/helpers/test_env.rb'
+ - 'spec/support/import_export/project_tree_expectations.rb'
+ - 'spec/support/shared_examples/features/master_manages_access_requests_shared_example.rb'
+ - 'spec/support/shared_examples/requests/rack_attack_shared_examples.rb'
+ - 'spec/support/sidekiq_middleware.rb'
+ - 'spec/support_specs/capybara_slow_finder_spec.rb'
+ - 'spec/tooling/graphql/docs/renderer_spec.rb'
+ - 'spec/workers/concerns/cronjob_queue_spec.rb'
+ - 'spec/workers/container_expiration_policies/cleanup_container_repository_worker_spec.rb'
+ - 'tooling/lib/tooling/mappings/base.rb'
diff --git a/.rubocop_todo/naming/inclusive_language.yml b/.rubocop_todo/naming/inclusive_language.yml
new file mode 100644
index 00000000000..953e1a6e508
--- /dev/null
+++ b/.rubocop_todo/naming/inclusive_language.yml
@@ -0,0 +1,101 @@
+---
+Naming/InclusiveLanguage:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/admin/application_settings/appearances_controller.rb'
+ - 'app/controllers/application_controller.rb'
+ - 'app/controllers/concerns/requires_whitelisted_monitoring_client.rb'
+ - 'app/controllers/health_check_controller.rb'
+ - 'app/controllers/health_controller.rb'
+ - 'app/controllers/metrics_controller.rb'
+ - 'app/helpers/application_settings_helper.rb'
+ - 'app/helpers/blob_helper.rb'
+ - 'app/helpers/markup_helper.rb'
+ - 'app/models/application_setting.rb'
+ - 'app/models/application_setting_implementation.rb'
+ - 'app/models/clusters/applications/jupyter.rb'
+ - 'app/models/concerns/cache_markdown_field.rb'
+ - 'app/services/application_settings/update_service.rb'
+ - 'app/services/projects/download_service.rb'
+ - 'app/uploaders/avatar_uploader.rb'
+ - 'app/uploaders/content_type_whitelist.rb'
+ - 'app/uploaders/design_management/design_v432x230_uploader.rb'
+ - 'app/uploaders/favicon_uploader.rb'
+ - 'app/uploaders/gitlab_uploader.rb'
+ - 'app/uploaders/import_export_uploader.rb'
+ - 'app/validators/cron_validator.rb'
+ - 'app/validators/qualified_domain_array_validator.rb'
+ - 'config/initializers/1_settings.rb'
+ - 'config/initializers/doorkeeper.rb'
+ - 'config/initializers/workhorse_multipart.rb'
+ - 'ee/app/controllers/projects/push_rules_controller.rb'
+ - 'ee/lib/arkose/verify_response.rb'
+ - 'ee/lib/system_check/geo/http_connection_check.rb'
+ - 'ee/spec/lib/gitlab/checks/diff_check_spec.rb'
+ - 'ee/spec/models/dora/lead_time_for_changes_metric_spec.rb'
+ - 'lib/api/entities/application_setting.rb'
+ - 'lib/api/settings.rb'
+ - 'lib/banzai/filter/asset_proxy_filter.rb'
+ - 'lib/gitlab/asset_proxy.rb'
+ - 'lib/gitlab/auth.rb'
+ - 'lib/gitlab/auth/ip_rate_limiter.rb'
+ - 'lib/gitlab/ci/config/external/file/base.rb'
+ - 'lib/gitlab/git/hook_env.rb'
+ - 'lib/gitlab/github_import/markdown/attachment.rb'
+ - 'lib/gitlab/markdown_cache/active_record/extension.rb'
+ - 'lib/gitlab/markdown_cache/field_data.rb'
+ - 'lib/gitlab/middleware/basic_health_check.rb'
+ - 'lib/gitlab/middleware/go.rb'
+ - 'lib/gitlab/sanitizers/exif.rb'
+ - 'lib/gitlab/sanitizers/svg.rb'
+ - 'lib/gitlab/sanitizers/svg/whitelist.rb'
+ - 'lib/system_check/app/git_user_default_ssh_config_check.rb'
+ - 'rubocop/cop/active_record_association_reload.rb'
+ - 'rubocop/cop/avoid_becomes.rb'
+ - 'rubocop/cop/avoid_keyword_arguments_in_sidekiq_workers.rb'
+ - 'rubocop/cop/avoid_return_from_blocks.rb'
+ - 'rubocop/cop/default_scope.rb'
+ - 'rubocop/cop/destroy_all.rb'
+ - 'rubocop/cop/graphql/id_type.rb'
+ - 'rubocop/cop/group_public_or_visible_to_user.rb'
+ - 'rubocop/cop/ignored_columns.rb'
+ - 'rubocop/cop/inject_enterprise_edition_module.rb'
+ - 'rubocop/cop/migration/add_columns_to_wide_tables.rb'
+ - 'spec/controllers/application_controller_spec.rb'
+ - 'spec/controllers/concerns/issuable_collections_spec.rb'
+ - 'spec/controllers/health_check_controller_spec.rb'
+ - 'spec/controllers/metrics_controller_spec.rb'
+ - 'spec/features/projects/import_export/export_file_spec.rb'
+ - 'spec/helpers/markup_helper_spec.rb'
+ - 'spec/lib/banzai/filter/asset_proxy_filter_spec.rb'
+ - 'spec/lib/gitlab/asset_proxy_spec.rb'
+ - 'spec/lib/gitlab/auth/ip_rate_limiter_spec.rb'
+ - 'spec/lib/gitlab/auth_spec.rb'
+ - 'spec/lib/gitlab/git/hook_env_spec.rb'
+ - 'spec/lib/gitlab/github_import/markdown/attachment_spec.rb'
+ - 'spec/lib/gitlab/import_export/attribute_configuration_spec.rb'
+ - 'spec/lib/gitlab/import_export/references_configuration_spec.rb'
+ - 'spec/lib/gitlab/markdown_cache/active_record/extension_spec.rb'
+ - 'spec/lib/gitlab/middleware/basic_health_check_spec.rb'
+ - 'spec/lib/gitlab/middleware/go_spec.rb'
+ - 'spec/lib/gitlab/sanitizers/exif_spec.rb'
+ - 'spec/lib/system_check/app/git_user_default_ssh_config_check_spec.rb'
+ - 'spec/models/application_setting_spec.rb'
+ - 'spec/models/clusters/applications/jupyter_spec.rb'
+ - 'spec/requests/api/settings_spec.rb'
+ - 'spec/requests/health_controller_spec.rb'
+ - 'spec/rubocop/cop/avoid_return_from_blocks_spec.rb'
+ - 'spec/rubocop/cop/graphql/id_type_spec.rb'
+ - 'spec/services/application_settings/update_service_spec.rb'
+ - 'spec/services/design_management/generate_image_versions_service_spec.rb'
+ - 'spec/services/error_tracking/list_issues_service_spec.rb'
+ - 'spec/services/projects/download_service_spec.rb'
+ - 'spec/support/import_export/export_file_helper.rb'
+ - 'spec/support/shared_contexts/upload_type_check_shared_context.rb'
+ - 'spec/support/shared_examples/lib/banzai/filters/sanitization_filter_shared_examples.rb'
+ - 'spec/support/shared_examples/models/application_setting_shared_examples.rb'
+ - 'spec/uploaders/avatar_uploader_spec.rb'
+ - 'spec/uploaders/content_type_whitelist_spec.rb'
+ - 'spec/uploaders/design_management/design_v432x230_uploader_spec.rb'
+ - 'spec/uploaders/favicon_uploader_spec.rb'
+ - 'spec/validators/cron_validator_spec.rb'
diff --git a/.rubocop_todo/performance/string_include.yml b/.rubocop_todo/performance/string_include.yml
new file mode 100644
index 00000000000..f2e17d3576a
--- /dev/null
+++ b/.rubocop_todo/performance/string_include.yml
@@ -0,0 +1,9 @@
+---
+# Cop supports --autocorrect.
+Performance/StringInclude:
+ Details: grace period
+ Exclude:
+ - 'lib/gitlab/github_import/importer/repository_importer.rb'
+ - 'lib/gitlab/legacy_github_import/importer.rb'
+ - 'lib/gitlab/usage_data.rb'
+ - 'rubocop/cop/gitlab/json.rb'
diff --git a/.rubocop_todo/rspec/context_method.yml b/.rubocop_todo/rspec/context_method.yml
new file mode 100644
index 00000000000..fa428552cb9
--- /dev/null
+++ b/.rubocop_todo/rspec/context_method.yml
@@ -0,0 +1,7 @@
+---
+# Cop supports --autocorrect.
+RSpec/ContextMethod:
+ Details: grace period
+ Exclude:
+ - 'ee/spec/models/geo/secondary_usage_data_spec.rb'
+ - 'ee/spec/models/geo_node_status_spec.rb'
diff --git a/.rubocop_todo/rspec/missing_feature_category.yml b/.rubocop_todo/rspec/missing_feature_category.yml
index ed137e4755a..345276db9d3 100644
--- a/.rubocop_todo/rspec/missing_feature_category.yml
+++ b/.rubocop_todo/rspec/missing_feature_category.yml
@@ -6,14 +6,12 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/components/namespaces/free_user_cap/enforcement_alert_component_spec.rb'
- 'ee/spec/components/namespaces/free_user_cap/enforcement_at_limit_alert_component_spec.rb'
- 'ee/spec/components/namespaces/free_user_cap/non_owner_alert_component_spec.rb'
- - 'ee/spec/components/namespaces/free_user_cap/notification_alert_component_spec.rb'
- 'ee/spec/components/namespaces/free_user_cap/usage_quota_alert_component_spec.rb'
- 'ee/spec/components/namespaces/free_user_cap/usage_quota_trial_alert_component_spec.rb'
- 'ee/spec/components/namespaces/storage/limit_alert_component_spec.rb'
- 'ee/spec/components/namespaces/storage/project_pre_enforcement_alert_component_spec.rb'
- 'ee/spec/components/namespaces/storage/subgroup_pre_enforcement_alert_component_spec.rb'
- 'ee/spec/components/namespaces/storage/user_pre_enforcement_alert_component_spec.rb'
- - 'ee/spec/config/metrics/every_metric_definition_spec.rb'
- 'ee/spec/controllers/admin/application_settings_controller_spec.rb'
- 'ee/spec/controllers/admin/clusters_controller_spec.rb'
- 'ee/spec/controllers/admin/geo/nodes_controller_spec.rb'
@@ -46,7 +44,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/elastic/migrate/20210910094600_add_namespace_ancestry_ids_to_issues_mapping_spec.rb'
- 'ee/spec/elastic/migrate/20210910100000_redo_backfill_namespace_ancestry_ids_for_issues_spec.rb'
- 'ee/spec/elastic/migrate/20220118150500_delete_orphaned_commits_spec.rb'
- - 'ee/spec/elastic/migrate/20220119120500_populate_commit_permissions_in_main_index_spec.rb'
- 'ee/spec/elastic/migrate/20220512150000_pause_indexing_for_unsupported_es_versions_spec.rb'
- 'ee/spec/elastic/migrate/20220613120500_migrate_commits_to_separate_index_spec.rb'
- 'ee/spec/elastic/migrate/20220824123000_add_label_ids_and_schema_version_to_issues_mapping_spec.rb'
@@ -56,9 +53,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/features/admin/admin_emails_spec.rb'
- 'ee/spec/features/admin/admin_settings_spec.rb'
- 'ee/spec/features/promotion_spec.rb'
- - 'ee/spec/features/search/elastic/global_search_spec.rb'
- - 'ee/spec/features/search/elastic/group_search_spec.rb'
- - 'ee/spec/features/search/elastic/project_search_spec.rb'
- 'ee/spec/finders/analytics/cycle_analytics/stage_finder_spec.rb'
- 'ee/spec/finders/analytics/devops_adoption/enabled_namespaces_finder_spec.rb'
- 'ee/spec/finders/analytics/devops_adoption/snapshots_finder_spec.rb'
@@ -236,7 +230,6 @@ RSpec/MissingFeatureCategory:
- '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/profiles/delete_spec.rb'
- - 'ee/spec/graphql/mutations/dast/profiles/run_spec.rb'
- 'ee/spec/graphql/mutations/dast_on_demand_scans/create_spec.rb'
- 'ee/spec/graphql/mutations/dast_scanner_profiles/delete_spec.rb'
- 'ee/spec/graphql/mutations/dast_site_profiles/create_spec.rb'
@@ -538,7 +531,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/graphql/types/vulnerability_severity_enum_spec.rb'
- 'ee/spec/graphql/types/vulnerability_sort_enum_spec.rb'
- 'ee/spec/graphql/types/vulnerability_state_enum_spec.rb'
- - 'ee/spec/graphql/types/vulnerability_type_spec.rb'
- 'ee/spec/graphql/types/vulnerable_dependency_type_spec.rb'
- 'ee/spec/graphql/types/vulnerable_kubernetes_resource_type_spec.rb'
- 'ee/spec/graphql/types/vulnerable_package_type_spec.rb'
@@ -581,7 +573,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/helpers/ee/groups_helper_spec.rb'
- 'ee/spec/helpers/ee/hooks_helper_spec.rb'
- 'ee/spec/helpers/ee/integrations_helper_spec.rb'
- - 'ee/spec/helpers/ee/invite_members_helper_spec.rb'
- 'ee/spec/helpers/ee/issues_helper_spec.rb'
- 'ee/spec/helpers/ee/labels_helper_spec.rb'
- 'ee/spec/helpers/ee/lock_helper_spec.rb'
@@ -597,7 +588,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/helpers/ee/projects/security/sast_configuration_helper_spec.rb'
- 'ee/spec/helpers/ee/registrations_helper_spec.rb'
- 'ee/spec/helpers/ee/releases_helper_spec.rb'
- - 'ee/spec/helpers/ee/security_orchestration_helper_spec.rb'
- 'ee/spec/helpers/ee/sorting_helper_spec.rb'
- 'ee/spec/helpers/ee/subscribable_banner_helper_spec.rb'
- 'ee/spec/helpers/ee/system_note_helper_spec.rb'
@@ -836,7 +826,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/ee/gitlab/url_builder_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage/metrics/aggregates/aggregate_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage/service_ping/payload_keys_processor_spec.rb'
- - 'ee/spec/lib/ee/gitlab/usage/service_ping_report_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage_data_counters/merge_request_activity_unique_counter_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage_data_counters/work_item_activity_unique_counter_spec.rb'
@@ -845,11 +834,9 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/ee/gitlab/verify/uploads_spec.rb'
- 'ee/spec/lib/ee/gitlab/web_hooks/rate_limiter_spec.rb'
- 'ee/spec/lib/ee/gitlab/web_ide/config/entry/global_spec.rb'
- - 'ee/spec/lib/ee/service_ping/build_payload_spec.rb'
- 'ee/spec/lib/ee/service_ping/permit_data_categories_spec.rb'
- 'ee/spec/lib/ee/service_ping/service_ping_settings_spec.rb'
- 'ee/spec/lib/ee/sidebars/groups/menus/issues_menu_spec.rb'
- - 'ee/spec/lib/ee/sidebars/projects/menus/analytics_menu_spec.rb'
- 'ee/spec/lib/ee/sidebars/projects/menus/ci_cd_menu_spec.rb'
- 'ee/spec/lib/ee/sidebars/projects/menus/issues_menu_spec.rb'
- 'ee/spec/lib/ee/sidebars/projects/menus/monitor_menu_spec.rb'
@@ -872,7 +859,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/elastic/latest/routing_spec.rb'
- 'ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb'
- 'ee/spec/lib/elastic/latest/user_config_spec.rb'
- - 'ee/spec/lib/elastic/latest/user_instance_proxy_spec.rb'
- 'ee/spec/lib/elastic/migration_spec.rb'
- 'ee/spec/lib/elastic/multi_version_class_proxy_spec.rb'
- 'ee/spec/lib/elastic/multi_version_instance_proxy_spec.rb'
@@ -1002,9 +988,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/gitlab/code_owners/validator_spec.rb'
- 'ee/spec/lib/gitlab/code_owners_spec.rb'
- 'ee/spec/lib/gitlab/com_spec.rb'
- - 'ee/spec/lib/gitlab/compliance_management/violations/approved_by_committer_spec.rb'
- - 'ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb'
- - 'ee/spec/lib/gitlab/compliance_management/violations/approved_by_merge_request_author_spec.rb'
- 'ee/spec/lib/gitlab/console_spec.rb'
- 'ee/spec/lib/gitlab/contribution_analytics/data_collector_spec.rb'
- 'ee/spec/lib/gitlab/custom_file_templates_spec.rb'
@@ -1033,7 +1016,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/gitlab/geo/health_check_spec.rb'
- 'ee/spec/lib/gitlab/geo/json_request_spec.rb'
- 'ee/spec/lib/gitlab/geo/jwt_request_decoder_spec.rb'
- - 'ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb'
- 'ee/spec/lib/gitlab/geo/log_cursor/event_logs_spec.rb'
- 'ee/spec/lib/gitlab/geo/log_cursor/events/cache_invalidation_event_spec.rb'
- 'ee/spec/lib/gitlab/geo/log_cursor/events/design_repository_updated_event_spec.rb'
@@ -1188,14 +1170,12 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/gitlab/usage_data_counters/epic_activity_unique_counter_spec.rb'
- 'ee/spec/lib/gitlab/usage_data_counters/licenses_list_spec.rb'
- 'ee/spec/lib/gitlab/usage_data_counters/streaming_audit_event_type_counter_spec.rb'
- - 'ee/spec/lib/gitlab/usage_data_metrics_spec.rb'
- 'ee/spec/lib/gitlab/user_access_spec.rb'
- 'ee/spec/lib/gitlab/visibility_level_spec.rb'
- 'ee/spec/lib/gitlab/web_ide/config/entry/schema/match_spec.rb'
- 'ee/spec/lib/gitlab/web_ide/config/entry/schema/uri_spec.rb'
- 'ee/spec/lib/gitlab/web_ide/config/entry/schema_spec.rb'
- 'ee/spec/lib/gitlab/web_ide/config/entry/schemas_spec.rb'
- - 'ee/spec/lib/gitlab_spec.rb'
- 'ee/spec/lib/gitlab_subscriptions/upcoming_reconciliation_entity_spec.rb'
- 'ee/spec/lib/incident_management/oncall_shift_generator_spec.rb'
- 'ee/spec/lib/omni_auth/strategies/group_saml_spec.rb'
@@ -1235,7 +1215,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/allowed_email_domain_spec.rb'
- 'ee/spec/models/analytics/cycle_analytics/aggregation_context_spec.rb'
- 'ee/spec/models/analytics/cycle_analytics/group_level_spec.rb'
- - 'ee/spec/models/analytics/cycle_analytics/project_stage_spec.rb'
- 'ee/spec/models/analytics/cycle_analytics/runtime_limiter_spec.rb'
- 'ee/spec/models/analytics/devops_adoption/enabled_namespace_spec.rb'
- 'ee/spec/models/analytics/devops_adoption/snapshot_spec.rb'
@@ -1245,7 +1224,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/app_sec/fuzzing/coverage/corpus_spec.rb'
- 'ee/spec/models/application_setting_spec.rb'
- 'ee/spec/models/approval_merge_request_rule_spec.rb'
- - 'ee/spec/models/approval_project_rule_spec.rb'
- 'ee/spec/models/approval_state_spec.rb'
- 'ee/spec/models/approval_wrapped_any_approver_rule_spec.rb'
- 'ee/spec/models/approval_wrapped_code_owner_rule_spec.rb'
@@ -1258,7 +1236,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/board_spec.rb'
- 'ee/spec/models/board_user_preference_spec.rb'
- 'ee/spec/models/boards/epic_board_label_spec.rb'
- - 'ee/spec/models/boards/epic_board_position_spec.rb'
- 'ee/spec/models/boards/epic_board_recent_visit_spec.rb'
- 'ee/spec/models/boards/epic_board_spec.rb'
- 'ee/spec/models/boards/epic_list_spec.rb'
@@ -1299,7 +1276,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/concerns/elastic/merge_request_spec.rb'
- 'ee/spec/models/concerns/elastic/milestone_spec.rb'
- 'ee/spec/models/concerns/elastic/note_spec.rb'
- - 'ee/spec/models/concerns/elastic/project_spec.rb'
- 'ee/spec/models/concerns/elastic/project_wiki_spec.rb'
- 'ee/spec/models/concerns/elastic/projects_search_spec.rb'
- 'ee/spec/models/concerns/elastic/repository_spec.rb'
@@ -1342,7 +1318,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/dora/lead_time_for_changes_metric_spec.rb'
- 'ee/spec/models/dora/time_to_restore_service_metric_spec.rb'
- 'ee/spec/models/ee/alert_management/alert_spec.rb'
- - 'ee/spec/models/ee/analytics/cycle_analytics/stage_event_hash_spec.rb'
- 'ee/spec/models/ee/analytics/usage_trends/measurement_spec.rb'
- 'ee/spec/models/ee/appearance_spec.rb'
- 'ee/spec/models/ee/approvable_spec.rb'
@@ -1400,7 +1375,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/ee/user_highest_role_spec.rb'
- 'ee/spec/models/ee/users/merge_request_interaction_spec.rb'
- 'ee/spec/models/ee/users_statistics_spec.rb'
- - 'ee/spec/models/ee/vulnerability_spec.rb'
- 'ee/spec/models/ee/work_items/type_spec.rb'
- 'ee/spec/models/elastic/index_setting_spec.rb'
- 'ee/spec/models/elastic/migration_record_spec.rb'
@@ -1411,8 +1385,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/elasticsearch_indexed_project_spec.rb'
- 'ee/spec/models/environment_spec.rb'
- 'ee/spec/models/epic/related_epic_link_spec.rb'
- - 'ee/spec/models/epic_issue_spec.rb'
- - 'ee/spec/models/epic_spec.rb'
- 'ee/spec/models/epic_user_mention_spec.rb'
- 'ee/spec/models/geo/cache_invalidation_event_spec.rb'
- 'ee/spec/models/geo/ci_secure_file_registry_spec.rb'
@@ -1420,7 +1392,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/geo/deleted_project_spec.rb'
- 'ee/spec/models/geo/dependency_proxy_blob_registry_spec.rb'
- 'ee/spec/models/geo/dependency_proxy_manifest_registry_spec.rb'
- - 'ee/spec/models/geo/design_registry_spec.rb'
- 'ee/spec/models/geo/event_log_spec.rb'
- 'ee/spec/models/geo/event_log_state_spec.rb'
- 'ee/spec/models/geo/every_geo_event_spec.rb'
@@ -1429,10 +1400,8 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/geo/job_artifact_registry_spec.rb'
- 'ee/spec/models/geo/lfs_object_registry_spec.rb'
- 'ee/spec/models/geo/merge_request_diff_registry_spec.rb'
- - 'ee/spec/models/geo/package_file_registry_spec.rb'
- 'ee/spec/models/geo/pages_deployment_registry_spec.rb'
- 'ee/spec/models/geo/pipeline_artifact_registry_spec.rb'
- - 'ee/spec/models/geo/project_registry_spec.rb'
- 'ee/spec/models/geo/project_wiki_repository_registry_spec.rb'
- 'ee/spec/models/geo/project_wiki_repository_state_spec.rb'
- 'ee/spec/models/geo/push_user_spec.rb'
@@ -1461,7 +1430,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/group_wiki_spec.rb'
- 'ee/spec/models/groups/repository_storage_move_spec.rb'
- 'ee/spec/models/historical_data_spec.rb'
- - 'ee/spec/models/hooks/group_hook_spec.rb'
- 'ee/spec/models/identity_spec.rb'
- 'ee/spec/models/incident_management/escalation_rule_spec.rb'
- 'ee/spec/models/incident_management/issuable_escalation_status_spec.rb'
@@ -1486,7 +1454,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/iteration_note_spec.rb'
- 'ee/spec/models/label_note_spec.rb'
- 'ee/spec/models/ldap_group_link_spec.rb'
- - 'ee/spec/models/license_spec.rb'
- 'ee/spec/models/member_spec.rb'
- 'ee/spec/models/merge_request/blocking_spec.rb'
- 'ee/spec/models/merge_request_block_spec.rb'
@@ -1513,7 +1480,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb'
- 'ee/spec/models/product_analytics/dashboard_spec.rb'
- 'ee/spec/models/product_analytics/jitsu_authentication_spec.rb'
- - 'ee/spec/models/product_analytics/widget_spec.rb'
- 'ee/spec/models/productivity_analytics_spec.rb'
- 'ee/spec/models/project_alias_spec.rb'
- 'ee/spec/models/project_ci_cd_setting_spec.rb'
@@ -1794,7 +1760,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/audit_event_service_spec.rb'
- 'ee/spec/services/audit_events/build_service_spec.rb'
- 'ee/spec/services/audit_events/custom_audit_event_service_spec.rb'
- - 'ee/spec/services/audit_events/export_csv_service_spec.rb'
- 'ee/spec/services/audit_events/impersonation_audit_event_service_spec.rb'
- 'ee/spec/services/audit_events/protected_branch_audit_event_service_spec.rb'
- 'ee/spec/services/audit_events/register_runner_audit_event_service_spec.rb'
@@ -1868,7 +1833,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/ci/play_build_service_spec.rb'
- 'ee/spec/services/ci/process_build_service_spec.rb'
- 'ee/spec/services/ci/process_pipeline_service_spec.rb'
- - 'ee/spec/services/ci/register_job_service_spec.rb'
- 'ee/spec/services/ci/retry_job_service_spec.rb'
- 'ee/spec/services/ci/retry_pipeline_service_spec.rb'
- 'ee/spec/services/ci/subscribe_bridge_service_spec.rb'
@@ -1935,7 +1899,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/ee/issues/after_create_service_spec.rb'
- 'ee/spec/services/ee/issues/build_from_vulnerability_service_spec.rb'
- 'ee/spec/services/ee/issues/clone_service_spec.rb'
- - 'ee/spec/services/ee/issues/create_from_vulnerability_data_service_spec.rb'
- 'ee/spec/services/ee/issues/move_service_spec.rb'
- 'ee/spec/services/ee/keys/destroy_service_spec.rb'
- 'ee/spec/services/ee/labels/create_service_spec.rb'
@@ -1959,7 +1922,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/ee/merge_requests/update_reviewers_service_spec.rb'
- 'ee/spec/services/ee/merge_requests/update_service_spec.rb'
- 'ee/spec/services/ee/namespace_settings/update_service_spec.rb'
- - 'ee/spec/services/ee/notes/create_service_spec.rb'
- 'ee/spec/services/ee/notes/destroy_service_spec.rb'
- 'ee/spec/services/ee/notes/post_process_service_spec.rb'
- 'ee/spec/services/ee/notes/quick_actions_service_spec.rb'
@@ -1972,8 +1934,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/ee/projects/deploy_tokens/create_service_spec.rb'
- 'ee/spec/services/ee/projects/deploy_tokens/destroy_service_spec.rb'
- 'ee/spec/services/ee/projects/unlink_fork_service_spec.rb'
- - 'ee/spec/services/ee/protected_branches/create_service_spec.rb'
- - 'ee/spec/services/ee/protected_branches/destroy_service_spec.rb'
- 'ee/spec/services/ee/protected_branches/update_service_spec.rb'
- 'ee/spec/services/ee/quick_actions/target_service_spec.rb'
- 'ee/spec/services/ee/releases/create_evidence_service_spec.rb'
@@ -2029,7 +1989,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/geo/container_repository_registry_removal_service_spec.rb'
- 'ee/spec/services/geo/container_repository_sync_service_spec.rb'
- 'ee/spec/services/geo/container_repository_sync_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/files_expire_service_spec.rb'
@@ -2055,14 +2014,10 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/geo/repository_destroy_service_spec.rb'
- 'ee/spec/services/geo/repository_registry_removal_service_spec.rb'
- 'ee/spec/services/geo/repository_renamed_event_store_spec.rb'
- - 'ee/spec/services/geo/repository_sync_service_spec.rb'
- 'ee/spec/services/geo/repository_updated_event_store_spec.rb'
- 'ee/spec/services/geo/repository_updated_service_spec.rb'
- - 'ee/spec/services/geo/repository_verification_primary_service_spec.rb'
- 'ee/spec/services/geo/repository_verification_reset_spec.rb'
- - 'ee/spec/services/geo/repository_verification_secondary_service_spec.rb'
- 'ee/spec/services/geo/reset_checksum_event_store_spec.rb'
- - 'ee/spec/services/geo/wiki_sync_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/activate_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/check_future_renewal_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/create_hand_raise_lead_service_spec.rb'
@@ -2129,7 +2084,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/issue_feature_flags/list_service_spec.rb'
- 'ee/spec/services/issues/build_service_spec.rb'
- 'ee/spec/services/issues/duplicate_service_spec.rb'
- - 'ee/spec/services/issues/export_csv_service_spec.rb'
- 'ee/spec/services/iterations/cadences/create_iterations_in_advance_service_spec.rb'
- 'ee/spec/services/iterations/cadences/create_service_spec.rb'
- 'ee/spec/services/iterations/cadences/destroy_service_spec.rb'
@@ -2224,8 +2178,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/quality_management/test_cases/create_service_spec.rb'
- 'ee/spec/services/releases/create_service_spec.rb'
- 'ee/spec/services/releases/update_service_spec.rb'
- - 'ee/spec/services/requirements_management/export_csv_service_spec.rb'
- - 'ee/spec/services/requirements_management/import_csv_service_spec.rb'
- 'ee/spec/services/requirements_management/map_export_fields_service_spec.rb'
- 'ee/spec/services/requirements_management/prepare_import_csv_service_spec.rb'
- 'ee/spec/services/requirements_management/process_test_reports_service_spec.rb'
@@ -2254,7 +2206,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/security/ingestion/tasks/ingest_finding_signatures_spec.rb'
- 'ee/spec/services/security/ingestion/tasks/ingest_findings_spec.rb'
- 'ee/spec/services/security/ingestion/tasks/ingest_identifiers_spec.rb'
- - 'ee/spec/services/security/ingestion/tasks/ingest_issue_links_spec.rb'
- 'ee/spec/services/security/ingestion/tasks/ingest_remediations_spec.rb'
- 'ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb'
- 'ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities_spec.rb'
@@ -2339,9 +2290,7 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/services/work_items/widgets/status_service/update_service_spec.rb'
- 'ee/spec/services/work_items/widgets/weight_service/update_service_spec.rb'
- 'ee/spec/tasks/geo/git_rake_spec.rb'
- - 'ee/spec/tasks/gitlab/check_rake_spec.rb'
- 'ee/spec/tasks/gitlab/license_rake_spec.rb'
- - 'ee/spec/tasks/gitlab/seed/group_seed_rake_spec.rb'
- 'ee/spec/tasks/gitlab/spdx_rake_spec.rb'
- 'ee/spec/uploaders/every_gitlab_uploader_spec.rb'
- 'ee/spec/validators/json_schema_validator_spec.rb'
@@ -2349,7 +2298,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/validators/password/complexity_validator_spec.rb'
- 'ee/spec/validators/user_existence_validator_spec.rb'
- 'ee/spec/views/admin/application_settings/_deletion_protection_settings.html.haml_spec.rb'
- - 'ee/spec/views/admin/application_settings/_elasticsearch_form.html.haml_spec.rb'
- 'ee/spec/views/admin/application_settings/_git_abuse_rate_limit.html.haml_spec.rb'
- 'ee/spec/views/admin/application_settings/general.html.haml_spec.rb'
- 'ee/spec/views/admin/dashboard/index.html.haml_spec.rb'
@@ -2363,7 +2311,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/views/clusters/clusters/show.html.haml_spec.rb'
- 'ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb'
- 'ee/spec/views/compliance_management/compliance_framework/_project_settings.html.haml_spec.rb'
- - 'ee/spec/views/devise/registrations/new.html.haml_spec.rb'
- 'ee/spec/views/devise/sessions/new.html.haml_spec.rb'
- 'ee/spec/views/groups/_compliance_frameworks.html.haml_spec.rb'
- 'ee/spec/views/groups/analytics/dashboards/index.html.haml_spec.rb'
@@ -2389,7 +2336,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/views/layouts/header/help_dropdown/_cross_stage_fdm.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_admin.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_group.html.haml_spec.rb'
- - 'ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_push_rules_link.html.haml_spec.rb'
- 'ee/spec/views/layouts/project.html.haml_spec.rb'
- 'ee/spec/views/operations/environments.html.haml_spec.rb'
@@ -2494,7 +2440,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/workers/elastic_cluster_reindexing_cron_worker_spec.rb'
- 'ee/spec/workers/elastic_commit_indexer_worker_spec.rb'
- 'ee/spec/workers/elastic_full_index_worker_spec.rb'
- - 'ee/spec/workers/elastic_index_bulk_cron_worker_spec.rb'
- 'ee/spec/workers/elastic_index_initial_bulk_cron_worker_spec.rb'
- 'ee/spec/workers/elastic_indexing_control_worker_spec.rb'
- 'ee/spec/workers/elastic_namespace_indexer_worker_spec.rb'
@@ -2582,7 +2527,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/workers/requirements_management/import_requirements_csv_worker_spec.rb'
- 'ee/spec/workers/requirements_management/process_requirements_reports_worker_spec.rb'
- 'ee/spec/workers/scan_security_report_secrets_worker_spec.rb'
- - 'ee/spec/workers/search/index_curation_worker_spec.rb'
- 'ee/spec/workers/security/auto_fix_worker_spec.rb'
- 'ee/spec/workers/security/create_orchestration_policy_worker_spec.rb'
- 'ee/spec/workers/security/orchestration_policy_rule_schedule_namespace_worker_spec.rb'
@@ -2678,7 +2622,6 @@ RSpec/MissingFeatureCategory:
- 'spec/controllers/concerns/metrics_dashboard_spec.rb'
- 'spec/controllers/concerns/page_limiter_spec.rb'
- 'spec/controllers/concerns/preferred_language_switcher_spec.rb'
- - 'spec/controllers/concerns/product_analytics_tracking_spec.rb'
- 'spec/controllers/concerns/project_unauthorized_spec.rb'
- 'spec/controllers/concerns/redirects_for_missing_path_on_tree_spec.rb'
- 'spec/controllers/concerns/redis_tracking_spec.rb'
@@ -2704,7 +2647,6 @@ RSpec/MissingFeatureCategory:
- 'spec/controllers/explore/projects_controller_spec.rb'
- 'spec/controllers/explore/snippets_controller_spec.rb'
- 'spec/controllers/google_api/authorizations_controller_spec.rb'
- - 'spec/controllers/graphql_controller_spec.rb'
- 'spec/controllers/groups/application_controller_spec.rb'
- 'spec/controllers/groups/avatars_controller_spec.rb'
- 'spec/controllers/groups/boards_controller_spec.rb'
@@ -2728,7 +2670,6 @@ RSpec/MissingFeatureCategory:
- 'spec/controllers/groups/shared_projects_controller_spec.rb'
- 'spec/controllers/groups/uploads_controller_spec.rb'
- 'spec/controllers/groups/variables_controller_spec.rb'
- - 'spec/controllers/groups_controller_spec.rb'
- 'spec/controllers/health_check_controller_spec.rb'
- 'spec/controllers/help_controller_spec.rb'
- 'spec/controllers/import/bitbucket_controller_spec.rb'
@@ -2808,7 +2749,6 @@ RSpec/MissingFeatureCategory:
- 'spec/controllers/projects/incidents_controller_spec.rb'
- 'spec/controllers/projects/issue_links_controller_spec.rb'
- 'spec/controllers/projects/issues_controller_spec.rb'
- - 'spec/controllers/projects/jobs_controller_spec.rb'
- 'spec/controllers/projects/labels_controller_spec.rb'
- 'spec/controllers/projects/mattermosts_controller_spec.rb'
- 'spec/controllers/projects/merge_requests/conflicts_controller_spec.rb'
@@ -2825,19 +2765,16 @@ RSpec/MissingFeatureCategory:
- 'spec/controllers/projects/performance_monitoring/dashboards_controller_spec.rb'
- 'spec/controllers/projects/pipelines/stages_controller_spec.rb'
- 'spec/controllers/projects/pipelines/tests_controller_spec.rb'
- - 'spec/controllers/projects/pipelines_controller_spec.rb'
- 'spec/controllers/projects/pipelines_settings_controller_spec.rb'
- 'spec/controllers/projects/project_members_controller_spec.rb'
- 'spec/controllers/projects/prometheus/alerts_controller_spec.rb'
- 'spec/controllers/projects/prometheus/metrics_controller_spec.rb'
- 'spec/controllers/projects/protected_branches_controller_spec.rb'
- 'spec/controllers/projects/protected_tags_controller_spec.rb'
- - 'spec/controllers/projects/raw_controller_spec.rb'
- 'spec/controllers/projects/registry/repositories_controller_spec.rb'
- 'spec/controllers/projects/registry/tags_controller_spec.rb'
- 'spec/controllers/projects/releases/evidences_controller_spec.rb'
- 'spec/controllers/projects/releases_controller_spec.rb'
- - 'spec/controllers/projects/repositories_controller_spec.rb'
- 'spec/controllers/projects/security/configuration_controller_spec.rb'
- 'spec/controllers/projects/service_desk_controller_spec.rb'
- 'spec/controllers/projects/service_ping_controller_spec.rb'
@@ -2890,12 +2827,10 @@ RSpec/MissingFeatureCategory:
- 'spec/experiments/ios_specific_templates_experiment_spec.rb'
- 'spec/experiments/require_verification_for_namespace_creation_experiment_spec.rb'
- 'spec/experiments/security_reports_mr_widget_prompt_experiment_spec.rb'
- - 'spec/experiments/video_tutorials_continuous_onboarding_experiment_spec.rb'
- 'spec/features/admin/dashboard_spec.rb'
- 'spec/features/groups/integrations/group_integrations_spec.rb'
- 'spec/features/markdown/observability_spec.rb'
- 'spec/features/milestones/user_views_milestones_spec.rb'
- - 'spec/features/projects/commits/multi_view_diff_spec.rb'
- 'spec/features/projects/feature_flags/user_creates_feature_flag_spec.rb'
- 'spec/features/projects/issues/viewing_issues_with_external_authorization_enabled_spec.rb'
- 'spec/features/projects/members/anonymous_user_sees_members_spec.rb'
@@ -2960,7 +2895,6 @@ RSpec/MissingFeatureCategory:
- 'spec/finders/fork_projects_finder_spec.rb'
- 'spec/finders/fork_targets_finder_spec.rb'
- 'spec/finders/group_descendants_finder_spec.rb'
- - 'spec/finders/group_members_finder_spec.rb'
- 'spec/finders/group_projects_finder_spec.rb'
- 'spec/finders/groups/accepting_group_transfers_finder_spec.rb'
- 'spec/finders/groups/accepting_project_transfers_finder_spec.rb'
@@ -3112,8 +3046,6 @@ RSpec/MissingFeatureCategory:
- 'spec/graphql/mutations/boards/lists/update_spec.rb'
- 'spec/graphql/mutations/boards/update_spec.rb'
- 'spec/graphql/mutations/branches/create_spec.rb'
- - 'spec/graphql/mutations/ci/job_token_scope/add_project_spec.rb'
- - 'spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb'
- 'spec/graphql/mutations/clusters/agent_tokens/create_spec.rb'
- 'spec/graphql/mutations/clusters/agent_tokens/revoke_spec.rb'
- 'spec/graphql/mutations/clusters/agents/create_spec.rb'
@@ -3283,14 +3215,12 @@ RSpec/MissingFeatureCategory:
- 'spec/graphql/resolvers/project_resolver_spec.rb'
- 'spec/graphql/resolvers/projects/fork_targets_resolver_spec.rb'
- 'spec/graphql/resolvers/projects/grafana_integration_resolver_spec.rb'
- - 'spec/graphql/resolvers/projects/jira_projects_resolver_spec.rb'
- 'spec/graphql/resolvers/projects/services_resolver_spec.rb'
- 'spec/graphql/resolvers/projects/snippets_resolver_spec.rb'
- 'spec/graphql/resolvers/projects_resolver_spec.rb'
- 'spec/graphql/resolvers/recent_boards_resolver_spec.rb'
- 'spec/graphql/resolvers/release_milestones_resolver_spec.rb'
- 'spec/graphql/resolvers/release_resolver_spec.rb'
- - 'spec/graphql/resolvers/releases_resolver_spec.rb'
- 'spec/graphql/resolvers/repository_branch_names_resolver_spec.rb'
- 'spec/graphql/resolvers/snippets/blobs_resolver_spec.rb'
- 'spec/graphql/resolvers/snippets_resolver_spec.rb'
@@ -3358,7 +3288,6 @@ RSpec/MissingFeatureCategory:
- 'spec/graphql/types/ci/job_kind_enum_spec.rb'
- 'spec/graphql/types/ci/job_need_union_spec.rb'
- 'spec/graphql/types/ci/job_status_enum_spec.rb'
- - 'spec/graphql/types/ci/job_token_scope_type_spec.rb'
- 'spec/graphql/types/ci/job_type_spec.rb'
- 'spec/graphql/types/ci/manual_variable_type_spec.rb'
- 'spec/graphql/types/ci/pipeline_counts_type_spec.rb'
@@ -3372,12 +3301,6 @@ RSpec/MissingFeatureCategory:
- 'spec/graphql/types/ci/project_variable_connection_type_spec.rb'
- 'spec/graphql/types/ci/project_variable_type_spec.rb'
- 'spec/graphql/types/ci/recent_failures_type_spec.rb'
- - 'spec/graphql/types/ci/runner_architecture_type_spec.rb'
- - 'spec/graphql/types/ci/runner_platform_type_spec.rb'
- - 'spec/graphql/types/ci/runner_setup_type_spec.rb'
- - 'spec/graphql/types/ci/runner_type_spec.rb'
- - 'spec/graphql/types/ci/runner_upgrade_status_enum_spec.rb'
- - 'spec/graphql/types/ci/runner_web_url_edge_spec.rb'
- 'spec/graphql/types/ci/stage_type_spec.rb'
- 'spec/graphql/types/ci/status_action_type_spec.rb'
- 'spec/graphql/types/ci/template_type_spec.rb'
@@ -3611,7 +3534,6 @@ RSpec/MissingFeatureCategory:
- 'spec/graphql/types/work_items/widgets/start_and_due_date_update_input_type_spec.rb'
- 'spec/graphql/types/x509_certificate_type_spec.rb'
- 'spec/graphql/types/x509_issuer_type_spec.rb'
- - 'spec/haml_lint/linter/documentation_links_spec.rb'
- 'spec/haml_lint/linter/inline_javascript_spec.rb'
- 'spec/haml_lint/linter/no_plain_nodes_spec.rb'
- 'spec/helpers/access_tokens_helper_spec.rb'
@@ -3685,7 +3607,6 @@ RSpec/MissingFeatureCategory:
- 'spec/helpers/invite_members_helper_spec.rb'
- 'spec/helpers/issuables_description_templates_helper_spec.rb'
- 'spec/helpers/issues_helper_spec.rb'
- - 'spec/helpers/jira_connect_helper_spec.rb'
- 'spec/helpers/json_helper_spec.rb'
- 'spec/helpers/keyset_helper_spec.rb'
- 'spec/helpers/labels_helper_spec.rb'
@@ -3722,7 +3643,6 @@ RSpec/MissingFeatureCategory:
- 'spec/helpers/projects/project_members_helper_spec.rb'
- 'spec/helpers/projects/security/configuration_helper_spec.rb'
- 'spec/helpers/projects/terraform_helper_spec.rb'
- - 'spec/helpers/projects_helper_spec.rb'
- 'spec/helpers/recaptcha_helper_spec.rb'
- 'spec/helpers/registrations_helper_spec.rb'
- 'spec/helpers/releases_helper_spec.rb'
@@ -3789,7 +3709,6 @@ RSpec/MissingFeatureCategory:
- 'spec/initializers/lograge_spec.rb'
- 'spec/initializers/mail_encoding_patch_spec.rb'
- 'spec/initializers/mailer_retries_spec.rb'
- - 'spec/initializers/memory_watchdog_spec.rb'
- 'spec/initializers/microsoft_graph_mailer_spec.rb'
- 'spec/initializers/net_http_patch_spec.rb'
- 'spec/initializers/net_http_response_patch_spec.rb'
@@ -3836,7 +3755,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/api/entities/merge_request_approvals_spec.rb'
- 'spec/lib/api/entities/merge_request_basic_spec.rb'
- 'spec/lib/api/entities/merge_request_changes_spec.rb'
- - 'spec/lib/api/entities/ml/mlflow/run_info_spec.rb'
- 'spec/lib/api/entities/ml/mlflow/run_spec.rb'
- 'spec/lib/api/entities/nuget/dependency_group_spec.rb'
- 'spec/lib/api/entities/nuget/dependency_spec.rb'
@@ -3895,28 +3813,7 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/backup/gitaly_backup_spec.rb'
- 'spec/lib/backup/repositories_spec.rb'
- 'spec/lib/backup/task_spec.rb'
- - 'spec/lib/banzai/color_parser_spec.rb'
- - 'spec/lib/banzai/commit_renderer_spec.rb'
- - 'spec/lib/banzai/cross_project_reference_spec.rb'
- - 'spec/lib/banzai/filter/absolute_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/ascii_doc_post_processing_filter_spec.rb'
- - 'spec/lib/banzai/filter/ascii_doc_sanitization_filter_spec.rb'
- - 'spec/lib/banzai/filter/asset_proxy_filter_spec.rb'
- - 'spec/lib/banzai/filter/audio_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/autolink_filter_spec.rb'
- - 'spec/lib/banzai/filter/blockquote_fence_filter_spec.rb'
- - 'spec/lib/banzai/filter/broadcast_message_placeholders_filter_spec.rb'
- - 'spec/lib/banzai/filter/broadcast_message_sanitization_filter_spec.rb'
- - 'spec/lib/banzai/filter/color_filter_spec.rb'
- - 'spec/lib/banzai/filter/custom_emoji_filter_spec.rb'
- - 'spec/lib/banzai/filter/emoji_filter_spec.rb'
- 'spec/lib/banzai/filter/external_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/footnote_filter_spec.rb'
- - 'spec/lib/banzai/filter/front_matter_filter_spec.rb'
- - 'spec/lib/banzai/filter/gollum_tags_filter_spec.rb'
- - 'spec/lib/banzai/filter/html_entity_filter_spec.rb'
- - 'spec/lib/banzai/filter/image_lazy_load_filter_spec.rb'
- - 'spec/lib/banzai/filter/image_link_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_alert_metrics_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_cluster_metrics_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_diff_filter_spec.rb'
@@ -3924,79 +3821,7 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/banzai/filter/inline_metrics_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_metrics_redactor_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_observability_filter_spec.rb'
- - 'spec/lib/banzai/filter/issuable_reference_expansion_filter_spec.rb'
- - 'spec/lib/banzai/filter/jira_import/adf_to_commonmark_filter_spec.rb'
- - 'spec/lib/banzai/filter/kroki_filter_spec.rb'
- - 'spec/lib/banzai/filter/markdown_filter_spec.rb'
- - 'spec/lib/banzai/filter/mermaid_filter_spec.rb'
- - 'spec/lib/banzai/filter/normalize_source_filter_spec.rb'
- - 'spec/lib/banzai/filter/output_safety_spec.rb'
- - 'spec/lib/banzai/filter/plantuml_filter_spec.rb'
- - 'spec/lib/banzai/filter/reference_redactor_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/abstract_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/alert_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/commit_range_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/commit_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/design_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/external_issue_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/feature_flag_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/issue_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/label_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/merge_request_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/milestone_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/project_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/reference_cache_spec.rb'
- - 'spec/lib/banzai/filter/references/reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/snippet_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/references/user_reference_filter_spec.rb'
- - 'spec/lib/banzai/filter/sanitization_filter_spec.rb'
- - 'spec/lib/banzai/filter/spaced_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/suggestion_filter_spec.rb'
- - 'spec/lib/banzai/filter/syntax_highlight_filter_spec.rb'
- - 'spec/lib/banzai/filter/table_of_contents_filter_spec.rb'
- - 'spec/lib/banzai/filter/table_of_contents_tag_filter_spec.rb'
- - 'spec/lib/banzai/filter/task_list_filter_spec.rb'
- - 'spec/lib/banzai/filter/timeout_html_pipeline_filter_spec.rb'
- - 'spec/lib/banzai/filter/truncate_source_filter_spec.rb'
- - 'spec/lib/banzai/filter/truncate_visible_filter_spec.rb'
- - 'spec/lib/banzai/filter/upload_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/video_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/wiki_link_filter_spec.rb'
- - 'spec/lib/banzai/filter_array_spec.rb'
- - 'spec/lib/banzai/issuable_extractor_spec.rb'
- - 'spec/lib/banzai/object_renderer_spec.rb'
- - 'spec/lib/banzai/pipeline/broadcast_message_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/description_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/email_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/emoji_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/gfm_pipeline_spec.rb'
- 'spec/lib/banzai/pipeline/incident_management/timeline_event_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/jira_import/adf_commonmark_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/post_process_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/pre_process_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline/wiki_pipeline_spec.rb'
- - 'spec/lib/banzai/pipeline_spec.rb'
- - 'spec/lib/banzai/querying_spec.rb'
- - 'spec/lib/banzai/reference_parser/alert_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/base_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/commit_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/commit_range_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/design_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/external_issue_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/feature_flag_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/issue_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/label_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/mentioned_group_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/mentioned_project_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/mentioned_user_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/merge_request_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/milestone_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/project_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/snippet_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/user_parser_spec.rb'
- - 'spec/lib/banzai/reference_redactor_spec.rb'
- - 'spec/lib/banzai/render_context_spec.rb'
- - 'spec/lib/banzai/renderer_spec.rb'
- 'spec/lib/bitbucket/collection_spec.rb'
- 'spec/lib/bitbucket/connection_spec.rb'
- 'spec/lib/bitbucket/page_spec.rb'
@@ -4024,13 +3849,9 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb'
- 'spec/lib/bulk_imports/common/graphql/get_members_query_spec.rb'
- 'spec/lib/bulk_imports/common/pipelines/badges_pipeline_spec.rb'
- - 'spec/lib/bulk_imports/common/pipelines/boards_pipeline_spec.rb'
- 'spec/lib/bulk_imports/common/pipelines/entity_finisher_spec.rb'
- - 'spec/lib/bulk_imports/common/pipelines/labels_pipeline_spec.rb'
- 'spec/lib/bulk_imports/common/pipelines/lfs_objects_pipeline_spec.rb'
- 'spec/lib/bulk_imports/common/pipelines/members_pipeline_spec.rb'
- - 'spec/lib/bulk_imports/common/pipelines/milestones_pipeline_spec.rb'
- - 'spec/lib/bulk_imports/common/pipelines/wiki_pipeline_spec.rb'
- 'spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb'
- 'spec/lib/bulk_imports/common/transformers/prohibited_attributes_transformer_spec.rb'
- 'spec/lib/bulk_imports/common/transformers/user_reference_transformer_spec.rb'
@@ -4040,11 +3861,9 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/bulk_imports/groups/extractors/subgroups_extractor_spec.rb'
- 'spec/lib/bulk_imports/groups/graphql/get_group_query_spec.rb'
- 'spec/lib/bulk_imports/groups/graphql/get_projects_query_spec.rb'
- - 'spec/lib/bulk_imports/groups/loaders/group_loader_spec.rb'
- 'spec/lib/bulk_imports/groups/pipelines/group_attributes_pipeline_spec.rb'
- 'spec/lib/bulk_imports/groups/pipelines/group_pipeline_spec.rb'
- 'spec/lib/bulk_imports/groups/pipelines/namespace_settings_pipeline_spec.rb'
- - 'spec/lib/bulk_imports/groups/pipelines/project_entities_pipeline_spec.rb'
- 'spec/lib/bulk_imports/groups/pipelines/subgroup_entities_pipeline_spec.rb'
- 'spec/lib/bulk_imports/groups/transformers/member_attributes_transformer_spec.rb'
- 'spec/lib/bulk_imports/groups/transformers/subgroup_to_entity_transformer_spec.rb'
@@ -4072,7 +3891,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/bulk_imports/projects/pipelines/references_pipeline_spec.rb'
- 'spec/lib/bulk_imports/projects/pipelines/releases_pipeline_spec.rb'
- 'spec/lib/bulk_imports/projects/pipelines/repository_bundle_pipeline_spec.rb'
- - 'spec/lib/bulk_imports/projects/pipelines/repository_pipeline_spec.rb'
- 'spec/lib/bulk_imports/projects/pipelines/service_desk_setting_pipeline_spec.rb'
- 'spec/lib/bulk_imports/projects/pipelines/snippets_pipeline_spec.rb'
- 'spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb'
@@ -4112,7 +3930,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/extracts_ref_spec.rb'
- 'spec/lib/feature/definition_spec.rb'
- 'spec/lib/feature/gitaly_spec.rb'
- - 'spec/lib/feature_spec.rb'
- 'spec/lib/file_size_validator_spec.rb'
- 'spec/lib/forever_spec.rb'
- 'spec/lib/generators/gitlab/snowplow_event_definition_generator_spec.rb'
@@ -4226,7 +4043,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/background_migration/backfill_integrations_type_new_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_internal_on_notes_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_issue_search_data_spec.rb'
- - 'spec/lib/gitlab/background_migration/backfill_jira_tracker_deployment_type2_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_member_namespace_for_group_members_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_namespace_details_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_namespace_id_for_namespace_route_spec.rb'
@@ -4329,7 +4145,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/bare_repository_import/importer_spec.rb'
- 'spec/lib/gitlab/bare_repository_import/repository_spec.rb'
- 'spec/lib/gitlab/batch_worker_context_spec.rb'
- - 'spec/lib/gitlab/bitbucket_import/importer_spec.rb'
- 'spec/lib/gitlab/bitbucket_import/project_creator_spec.rb'
- 'spec/lib/gitlab/bitbucket_import/wiki_formatter_spec.rb'
- 'spec/lib/gitlab/bitbucket_server_import/importer_spec.rb'
@@ -4356,7 +4171,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/chat/responder/base_spec.rb'
- 'spec/lib/gitlab/chat/responder/mattermost_spec.rb'
- 'spec/lib/gitlab/chat/responder/slack_spec.rb'
- - 'spec/lib/gitlab/chat/responder_spec.rb'
- 'spec/lib/gitlab/chat_name_token_spec.rb'
- 'spec/lib/gitlab/chat_spec.rb'
- 'spec/lib/gitlab/checks/branch_check_spec.rb'
@@ -4397,7 +4211,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/ci/build/artifacts/metadata/entry_spec.rb'
- 'spec/lib/gitlab/ci/build/artifacts/metadata_spec.rb'
- 'spec/lib/gitlab/ci/build/artifacts/path_spec.rb'
- - 'spec/lib/gitlab/ci/build/auto_retry_spec.rb'
- 'spec/lib/gitlab/ci/build/cache_spec.rb'
- 'spec/lib/gitlab/ci/build/context/global_spec.rb'
- 'spec/lib/gitlab/ci/build/credentials/factory_spec.rb'
@@ -4479,11 +4292,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/ci/config/extendable/entry_spec.rb'
- 'spec/lib/gitlab/ci/config/extendable_spec.rb'
- 'spec/lib/gitlab/ci/config/external/context_spec.rb'
- - 'spec/lib/gitlab/ci/config/external/file/artifact_spec.rb'
- - 'spec/lib/gitlab/ci/config/external/file/base_spec.rb'
- - 'spec/lib/gitlab/ci/config/external/file/project_spec.rb'
- - 'spec/lib/gitlab/ci/config/external/file/remote_spec.rb'
- - 'spec/lib/gitlab/ci/config/external/file/template_spec.rb'
- 'spec/lib/gitlab/ci/config/external/rules_spec.rb'
- 'spec/lib/gitlab/ci/config/normalizer/factory_spec.rb'
- 'spec/lib/gitlab/ci/config/normalizer/matrix_strategy_spec.rb'
@@ -4589,9 +4397,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/ci/reports/test_suite_summary_spec.rb'
- 'spec/lib/gitlab/ci/runner/backoff_spec.rb'
- 'spec/lib/gitlab/ci/runner/metrics_spec.rb'
- - 'spec/lib/gitlab/ci/runner_instructions_spec.rb'
- - 'spec/lib/gitlab/ci/runner_releases_spec.rb'
- - 'spec/lib/gitlab/ci/runner_upgrade_check_spec.rb'
- 'spec/lib/gitlab/ci/secure_files/cer_spec.rb'
- 'spec/lib/gitlab/ci/secure_files/mobile_provision_spec.rb'
- 'spec/lib/gitlab/ci/secure_files/p12_spec.rb'
@@ -4710,7 +4515,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/config/entry/validatable_spec.rb'
- 'spec/lib/gitlab/config/entry/validator_spec.rb'
- 'spec/lib/gitlab/config/entry/validators/nested_array_helpers_spec.rb'
- - 'spec/lib/gitlab/config/loader/yaml_spec.rb'
- 'spec/lib/gitlab/config_checker/external_database_checker_spec.rb'
- 'spec/lib/gitlab/config_checker/puma_rugged_checker_spec.rb'
- 'spec/lib/gitlab/conflict/file_collection_spec.rb'
@@ -4779,7 +4583,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/database/load_balancing/sidekiq_server_middleware_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/srv_resolver_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/sticking_spec.rb'
- - 'spec/lib/gitlab/database/load_balancing/transaction_leaking_spec.rb'
- 'spec/lib/gitlab/database/load_balancing_spec.rb'
- 'spec/lib/gitlab/database/loose_foreign_keys_spec.rb'
- 'spec/lib/gitlab/database/migration_helpers/announce_database_spec.rb'
@@ -4853,7 +4656,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/database/schema_migrations/context_spec.rb'
- 'spec/lib/gitlab/database/schema_migrations/migrations_spec.rb'
- 'spec/lib/gitlab/database/sha_attribute_spec.rb'
- - 'spec/lib/gitlab/database/shared_model_spec.rb'
- 'spec/lib/gitlab/database/similarity_score_spec.rb'
- 'spec/lib/gitlab/database/tables_sorted_by_foreign_keys_spec.rb'
- 'spec/lib/gitlab/database/transaction/observer_spec.rb'
@@ -4888,7 +4690,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/dependency_linker/podspec_linker_spec.rb'
- 'spec/lib/gitlab/dependency_linker/requirements_txt_linker_spec.rb'
- 'spec/lib/gitlab/dependency_linker_spec.rb'
- - 'spec/lib/gitlab/deploy_key_access_spec.rb'
- 'spec/lib/gitlab/diff/char_diff_spec.rb'
- 'spec/lib/gitlab/diff/diff_refs_spec.rb'
- 'spec/lib/gitlab/diff/file_collection/base_spec.rb'
@@ -4997,7 +4798,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/favicon_spec.rb'
- 'spec/lib/gitlab/feature_categories_spec.rb'
- 'spec/lib/gitlab/file_detector_spec.rb'
- - 'spec/lib/gitlab/file_finder_spec.rb'
- 'spec/lib/gitlab/file_hook_spec.rb'
- 'spec/lib/gitlab/file_markdown_link_builder_spec.rb'
- 'spec/lib/gitlab/file_type_detection_spec.rb'
@@ -5068,10 +4868,8 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/gitaly_client/object_pool_service_spec.rb'
- 'spec/lib/gitlab/gitaly_client/operation_service_spec.rb'
- 'spec/lib/gitlab/gitaly_client/praefect_info_service_spec.rb'
- - 'spec/lib/gitlab/gitaly_client/ref_service_spec.rb'
- 'spec/lib/gitlab/gitaly_client/remote_service_spec.rb'
- 'spec/lib/gitlab/gitaly_client/repository_service_spec.rb'
- - 'spec/lib/gitlab/gitaly_client/server_service_spec.rb'
- 'spec/lib/gitlab/gitaly_client/storage_settings_spec.rb'
- 'spec/lib/gitlab/gitaly_client/util_spec.rb'
- 'spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb'
@@ -5163,7 +4961,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/graphql/batch_key_spec.rb'
- 'spec/lib/gitlab/graphql/calls_gitaly/field_extension_spec.rb'
- 'spec/lib/gitlab/graphql/copy_field_description_spec.rb'
- - 'spec/lib/gitlab/graphql/deprecation_spec.rb'
- 'spec/lib/gitlab/graphql/generic_tracing_spec.rb'
- 'spec/lib/gitlab/graphql/known_operations_spec.rb'
- 'spec/lib/gitlab/graphql/lazy_spec.rb'
@@ -5265,7 +5062,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/import_export/group/tree_restorer_spec.rb'
- 'spec/lib/gitlab/import_export/group/tree_saver_spec.rb'
- 'spec/lib/gitlab/import_export/hash_util_spec.rb'
- - 'spec/lib/gitlab/import_export/import_export_equivalence_spec.rb'
- 'spec/lib/gitlab/import_export/import_export_spec.rb'
- 'spec/lib/gitlab/import_export/import_failure_service_spec.rb'
- 'spec/lib/gitlab/import_export/import_test_coverage_spec.rb'
@@ -5275,7 +5071,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/import_export/json/legacy_writer_spec.rb'
- 'spec/lib/gitlab/import_export/json/ndjson_reader_spec.rb'
- 'spec/lib/gitlab/import_export/json/ndjson_writer_spec.rb'
- - 'spec/lib/gitlab/import_export/json/streaming_serializer_spec.rb'
- 'spec/lib/gitlab/import_export/legacy_relation_tree_saver_spec.rb'
- 'spec/lib/gitlab/import_export/lfs_restorer_spec.rb'
- 'spec/lib/gitlab/import_export/lfs_saver_spec.rb'
@@ -5287,9 +5082,7 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/import_export/project/exported_relations_merger_spec.rb'
- 'spec/lib/gitlab/import_export/project/import_task_spec.rb'
- 'spec/lib/gitlab/import_export/project/object_builder_spec.rb'
- - 'spec/lib/gitlab/import_export/project/relation_factory_spec.rb'
- 'spec/lib/gitlab/import_export/project/relation_saver_spec.rb'
- - 'spec/lib/gitlab/import_export/project/relation_tree_restorer_spec.rb'
- 'spec/lib/gitlab/import_export/project/sample/date_calculator_spec.rb'
- 'spec/lib/gitlab/import_export/project/sample/relation_factory_spec.rb'
- 'spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb'
@@ -5406,12 +5199,10 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/local_and_remote_storage_migration/artifact_migrater_spec.rb'
- 'spec/lib/gitlab/local_and_remote_storage_migration/pages_deployment_migrater_spec.rb'
- 'spec/lib/gitlab/log_timestamp_formatter_spec.rb'
- - 'spec/lib/gitlab/logger_spec.rb'
- 'spec/lib/gitlab/logging/cloudflare_helper_spec.rb'
- 'spec/lib/gitlab/lograge/custom_options_spec.rb'
- 'spec/lib/gitlab/loop_helpers_spec.rb'
- 'spec/lib/gitlab/mail_room/authenticator_spec.rb'
- - 'spec/lib/gitlab/mail_room/mail_room_spec.rb'
- 'spec/lib/gitlab/mailgun/webhook_processors/failure_logger_spec.rb'
- 'spec/lib/gitlab/mailgun/webhook_processors/member_invites_spec.rb'
- 'spec/lib/gitlab/manifest_import/manifest_spec.rb'
@@ -5430,7 +5221,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/memory/reports_uploader_spec.rb'
- 'spec/lib/gitlab/memory/upload_and_cleanup_reports_spec.rb'
- 'spec/lib/gitlab/memory/watchdog/configuration_spec.rb'
- - 'spec/lib/gitlab/memory/watchdog/configurator_spec.rb'
- 'spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb'
- 'spec/lib/gitlab/memory/watchdog/monitor/rss_memory_limit_spec.rb'
- 'spec/lib/gitlab/memory/watchdog/monitor/unique_memory_growth_spec.rb'
@@ -5665,7 +5455,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/search/abuse_detection_spec.rb'
- 'spec/lib/gitlab/search/abuse_validators/no_abusive_coercion_from_string_validator_spec.rb'
- 'spec/lib/gitlab/search/abuse_validators/no_abusive_term_length_validator_spec.rb'
- - 'spec/lib/gitlab/search/found_blob_spec.rb'
- 'spec/lib/gitlab/search/found_wiki_page_spec.rb'
- 'spec/lib/gitlab/search/params_spec.rb'
- 'spec/lib/gitlab/search/query_spec.rb'
@@ -5732,7 +5521,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/sidekiq_versioning/worker_spec.rb'
- 'spec/lib/gitlab/sidekiq_versioning_spec.rb'
- 'spec/lib/gitlab/slash_commands/application_help_spec.rb'
- - 'spec/lib/gitlab/slash_commands/command_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_close_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_comment_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_move_spec.rb'
@@ -5847,14 +5635,12 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/usage/metrics/instrumentations/work_items_activity_aggregated_metric_spec.rb'
- 'spec/lib/gitlab/usage/metrics/key_path_processor_spec.rb'
- 'spec/lib/gitlab/usage/metrics/name_suggestion_spec.rb'
- - 'spec/lib/gitlab/usage/metrics/names_suggestions/generator_spec.rb'
- 'spec/lib/gitlab/usage/metrics/names_suggestions/relation_parsers/having_constraints_spec.rb'
- 'spec/lib/gitlab/usage/metrics/names_suggestions/relation_parsers/joins_spec.rb'
- 'spec/lib/gitlab/usage/metrics/names_suggestions/relation_parsers/where_constraints_spec.rb'
- 'spec/lib/gitlab/usage/metrics/query_spec.rb'
- 'spec/lib/gitlab/usage/service_ping/instrumented_payload_spec.rb'
- 'spec/lib/gitlab/usage/service_ping/payload_keys_processor_spec.rb'
- - 'spec/lib/gitlab/usage/service_ping_report_spec.rb'
- 'spec/lib/gitlab/usage_data/topology_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/base_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/ci_template_unique_counter_spec.rb'
@@ -5886,7 +5672,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/gitlab/usage_data_counters/wiki_page_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/work_item_activity_unique_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters_spec.rb'
- - 'spec/lib/gitlab/usage_data_metrics_spec.rb'
- 'spec/lib/gitlab/usage_data_non_sql_metrics_spec.rb'
- 'spec/lib/gitlab/usage_data_queries_spec.rb'
- 'spec/lib/gitlab/user_access_snippet_spec.rb'
@@ -5975,7 +5760,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/omni_auth/strategies/bitbucket_spec.rb'
- 'spec/lib/omni_auth/strategies/jwt_spec.rb'
- 'spec/lib/pager_duty/webhook_payload_parser_spec.rb'
- - 'spec/lib/peek/views/active_record_spec.rb'
- 'spec/lib/peek/views/bullet_detailed_spec.rb'
- 'spec/lib/peek/views/detailed_view_spec.rb'
- 'spec/lib/peek/views/external_http_spec.rb'
@@ -5988,7 +5772,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/prometheus/pid_provider_spec.rb'
- 'spec/lib/quality/seeders/issues_spec.rb'
- 'spec/lib/release_highlights/validator/entry_spec.rb'
- - 'spec/lib/release_highlights/validator_spec.rb'
- 'spec/lib/rouge/formatters/html_gitlab_spec.rb'
- 'spec/lib/safe_zip/entry_spec.rb'
- 'spec/lib/safe_zip/extract_params_spec.rb'
@@ -5999,7 +5782,6 @@ RSpec/MissingFeatureCategory:
- 'spec/lib/security/ci_configuration/secret_detection_build_action_spec.rb'
- 'spec/lib/security/report_schema_version_matcher_spec.rb'
- 'spec/lib/serializers/unsafe_json_spec.rb'
- - 'spec/lib/service_ping/build_payload_spec.rb'
- 'spec/lib/service_ping/devops_report_spec.rb'
- 'spec/lib/service_ping/permit_data_categories_spec.rb'
- 'spec/lib/service_ping/service_ping_settings_spec.rb'
@@ -6091,8 +5873,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/alerting/project_alerting_setting_spec.rb'
- 'spec/models/analytics/cycle_analytics/issue_stage_event_spec.rb'
- 'spec/models/analytics/cycle_analytics/merge_request_stage_event_spec.rb'
- - 'spec/models/analytics/cycle_analytics/project_stage_spec.rb'
- - 'spec/models/analytics/cycle_analytics/project_value_stream_spec.rb'
- 'spec/models/analytics/cycle_analytics/stage_event_hash_spec.rb'
- 'spec/models/analytics/usage_trends/measurement_spec.rb'
- 'spec/models/appearance_spec.rb'
@@ -6142,7 +5922,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/ci/artifact_blob_spec.rb'
- 'spec/models/ci/build_dependencies_spec.rb'
- 'spec/models/ci/build_metadata_spec.rb'
- - 'spec/models/ci/build_pending_state_spec.rb'
- 'spec/models/ci/build_report_result_spec.rb'
- 'spec/models/ci/build_trace_chunk_spec.rb'
- 'spec/models/ci/build_trace_chunks/database_spec.rb'
@@ -6165,7 +5944,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/ci/pipeline_metadata_spec.rb'
- 'spec/models/ci/pipeline_schedule_variable_spec.rb'
- 'spec/models/ci/pipeline_variable_spec.rb'
- - 'spec/models/ci/processable_spec.rb'
- 'spec/models/ci/project_mirror_spec.rb'
- 'spec/models/ci/ref_spec.rb'
- 'spec/models/ci/resource_group_spec.rb'
@@ -6179,15 +5957,12 @@ RSpec/MissingFeatureCategory:
- 'spec/models/ci/unit_test_failure_spec.rb'
- 'spec/models/ci/unit_test_spec.rb'
- 'spec/models/ci/variable_spec.rb'
- - 'spec/models/ci_platform_metric_spec.rb'
- 'spec/models/clusters/agent_spec.rb'
- 'spec/models/clusters/agent_token_spec.rb'
- 'spec/models/clusters/agents/activity_event_spec.rb'
- 'spec/models/clusters/agents/group_authorization_spec.rb'
- 'spec/models/clusters/agents/implicit_authorization_spec.rb'
- 'spec/models/clusters/agents/project_authorization_spec.rb'
- - 'spec/models/clusters/applications/cert_manager_spec.rb'
- - 'spec/models/clusters/applications/cilium_spec.rb'
- 'spec/models/clusters/applications/crossplane_spec.rb'
- 'spec/models/clusters/applications/helm_spec.rb'
- 'spec/models/clusters/applications/ingress_spec.rb'
@@ -6196,7 +5971,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/clusters/applications/prometheus_spec.rb'
- 'spec/models/clusters/applications/runner_spec.rb'
- 'spec/models/clusters/cluster_enabled_grant_spec.rb'
- - 'spec/models/clusters/cluster_spec.rb'
- 'spec/models/clusters/clusters_hierarchy_spec.rb'
- 'spec/models/clusters/group_spec.rb'
- 'spec/models/clusters/integrations/prometheus_spec.rb'
@@ -6224,7 +5998,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/concerns/batch_nullify_dependent_associations_spec.rb'
- 'spec/models/concerns/blob_language_from_git_attributes_spec.rb'
- 'spec/models/concerns/blocks_unsafe_serialization_spec.rb'
- - 'spec/models/concerns/bulk_insert_safe_spec.rb'
- 'spec/models/concerns/bulk_insertable_associations_spec.rb'
- 'spec/models/concerns/cache_markdown_field_spec.rb'
- 'spec/models/concerns/cacheable_attributes_spec.rb'
@@ -6234,8 +6007,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/concerns/ci/artifactable_spec.rb'
- 'spec/models/concerns/ci/bulk_insertable_tags_spec.rb'
- 'spec/models/concerns/ci/has_ref_spec.rb'
- - 'spec/models/concerns/ci/has_variable_spec.rb'
- - 'spec/models/concerns/ci/maskable_spec.rb'
- 'spec/models/concerns/ci/partitionable/switch_spec.rb'
- 'spec/models/concerns/ci/partitionable_spec.rb'
- 'spec/models/concerns/ci/track_environment_usage_spec.rb'
@@ -6294,7 +6065,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/concerns/reactive_caching_spec.rb'
- 'spec/models/concerns/redactable_spec.rb'
- 'spec/models/concerns/redis_cacheable_spec.rb'
- - 'spec/models/concerns/require_email_verification_spec.rb'
- 'spec/models/concerns/resolvable_discussion_spec.rb'
- 'spec/models/concerns/resolvable_note_spec.rb'
- 'spec/models/concerns/routable_spec.rb'
@@ -6352,7 +6122,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/design_management/design_action_spec.rb'
- 'spec/models/design_management/design_at_version_spec.rb'
- 'spec/models/design_management/design_collection_spec.rb'
- - 'spec/models/design_management/design_spec.rb'
- 'spec/models/design_management/repository_spec.rb'
- 'spec/models/design_management/version_spec.rb'
- 'spec/models/design_user_mention_spec.rb'
@@ -6364,7 +6133,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/diff_viewer/image_spec.rb'
- 'spec/models/diff_viewer/server_side_spec.rb'
- 'spec/models/discussion_note_spec.rb'
- - 'spec/models/discussion_spec.rb'
- 'spec/models/draft_note_spec.rb'
- 'spec/models/email_spec.rb'
- 'spec/models/environment_status_spec.rb'
@@ -6393,10 +6161,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/groups/feature_setting_spec.rb'
- 'spec/models/guest_spec.rb'
- 'spec/models/hooks/active_hook_filter_spec.rb'
- - 'spec/models/hooks/project_hook_spec.rb'
- - 'spec/models/hooks/service_hook_spec.rb'
- - 'spec/models/hooks/system_hook_spec.rb'
- - 'spec/models/hooks/web_hook_log_spec.rb'
- 'spec/models/identity_spec.rb'
- 'spec/models/import_export_upload_spec.rb'
- 'spec/models/import_failure_spec.rb'
@@ -6502,8 +6266,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/merge_request_assignee_spec.rb'
- 'spec/models/merge_request_context_commit_diff_file_spec.rb'
- 'spec/models/merge_request_context_commit_spec.rb'
- - 'spec/models/merge_request_diff_commit_spec.rb'
- - 'spec/models/merge_request_diff_file_spec.rb'
- 'spec/models/merge_request_reviewer_spec.rb'
- 'spec/models/metrics/dashboard/annotation_spec.rb'
- 'spec/models/metrics/users_starred_dashboard_spec.rb'
@@ -6512,14 +6274,12 @@ RSpec/MissingFeatureCategory:
- 'spec/models/milestone_spec.rb'
- 'spec/models/ml/candidate_metric_spec.rb'
- 'spec/models/ml/candidate_param_spec.rb'
- - 'spec/models/ml/candidate_spec.rb'
- 'spec/models/ml/experiment_spec.rb'
- 'spec/models/namespace/admin_note_spec.rb'
- 'spec/models/namespace/aggregation_schedule_spec.rb'
- 'spec/models/namespace/detail_spec.rb'
- 'spec/models/namespace/package_setting_spec.rb'
- 'spec/models/namespace/root_storage_statistics_spec.rb'
- - 'spec/models/namespace/traversal_hierarchy_spec.rb'
- 'spec/models/namespace_ci_cd_setting_spec.rb'
- 'spec/models/namespace_statistics_spec.rb'
- 'spec/models/namespaces/project_namespace_spec.rb'
@@ -6652,7 +6412,6 @@ RSpec/MissingFeatureCategory:
- 'spec/models/serverless/domain_cluster_spec.rb'
- 'spec/models/serverless/domain_spec.rb'
- 'spec/models/serverless/function_spec.rb'
- - 'spec/models/service_desk_setting_spec.rb'
- 'spec/models/shard_spec.rb'
- 'spec/models/snippet_blob_spec.rb'
- 'spec/models/snippet_input_action_collection_spec.rb'
@@ -6753,7 +6512,6 @@ RSpec/MissingFeatureCategory:
- 'spec/policies/group_deploy_key_policy_spec.rb'
- 'spec/policies/group_deploy_keys_group_policy_spec.rb'
- 'spec/policies/group_member_policy_spec.rb'
- - 'spec/policies/group_policy_spec.rb'
- 'spec/policies/identity_provider_policy_spec.rb'
- 'spec/policies/incident_management/timeline_event_policy_spec.rb'
- 'spec/policies/instance_metadata_policy_spec.rb'
@@ -6852,7 +6610,6 @@ RSpec/MissingFeatureCategory:
- 'spec/requests/api/graphql/mutations/ci/pipeline_schedule_create_spec.rb'
- 'spec/requests/api/graphql/mutations/merge_requests/accept_spec.rb'
- 'spec/requests/api/graphql/mutations/merge_requests/set_labels_spec.rb'
- - 'spec/requests/api/projects_spec.rb'
- 'spec/requests/api/resource_state_events_spec.rb'
- 'spec/requests/api/task_completion_status_spec.rb'
- 'spec/requests/groups/clusters/integrations_controller_spec.rb'
@@ -6955,7 +6712,6 @@ RSpec/MissingFeatureCategory:
- 'spec/rubocop/cop/migration/migration_record_spec.rb'
- 'spec/rubocop/cop/migration/prevent_global_enable_lock_retries_with_disable_ddl_transaction_spec.rb'
- 'spec/rubocop/cop/migration/prevent_index_creation_spec.rb'
- - 'spec/rubocop/cop/migration/prevent_single_statement_with_disable_ddl_transaction_spec.rb'
- 'spec/rubocop/cop/migration/prevent_strings_spec.rb'
- 'spec/rubocop/cop/migration/refer_to_index_by_name_spec.rb'
- 'spec/rubocop/cop/migration/remove_column_spec.rb'
@@ -7001,6 +6757,7 @@ RSpec/MissingFeatureCategory:
- 'spec/rubocop/cop/safe_params_spec.rb'
- 'spec/rubocop/cop/scalability/bulk_perform_with_context_spec.rb'
- 'spec/rubocop/cop/scalability/cron_worker_context_spec.rb'
+ - 'spec/rubocop/cop/scalability/file_uploads_spec.rb'
- 'spec/rubocop/cop/scalability/idempotent_worker_spec.rb'
- 'spec/rubocop/cop/sidekiq_api_usage_spec.rb'
- 'spec/rubocop/cop/sidekiq_load_balancing/worker_data_consistency_spec.rb'
@@ -7023,10 +6780,7 @@ RSpec/MissingFeatureCategory:
- 'spec/scripts/failed_tests_spec.rb'
- 'spec/scripts/lib/glfm/parse_examples_spec.rb'
- 'spec/scripts/lib/glfm/shared_spec.rb'
- - 'spec/scripts/lib/glfm/update_example_snapshots_spec.rb'
- - 'spec/scripts/lib/glfm/update_specification_spec.rb'
- 'spec/scripts/lib/glfm/verify_all_generated_files_are_up_to_date_spec.rb'
- - 'spec/scripts/pipeline_test_report_builder_spec.rb'
- 'spec/scripts/setup/find_jh_branch_spec.rb'
- 'spec/serializers/access_token_entity_base_spec.rb'
- 'spec/serializers/accessibility_error_entity_spec.rb'
@@ -7139,7 +6893,6 @@ RSpec/MissingFeatureCategory:
- 'spec/serializers/import/manifest_provider_repo_entity_spec.rb'
- 'spec/serializers/import/provider_repo_serializer_spec.rb'
- 'spec/serializers/integrations/event_entity_spec.rb'
- - 'spec/serializers/integrations/field_entity_spec.rb'
- 'spec/serializers/integrations/harbor_serializers/artifact_entity_spec.rb'
- 'spec/serializers/integrations/harbor_serializers/artifact_serializer_spec.rb'
- 'spec/serializers/integrations/harbor_serializers/repository_entity_spec.rb'
@@ -7189,7 +6942,6 @@ RSpec/MissingFeatureCategory:
- 'spec/serializers/pipeline_serializer_spec.rb'
- 'spec/serializers/project_access_token_entity_spec.rb'
- 'spec/serializers/project_access_token_serializer_spec.rb'
- - 'spec/serializers/project_import_entity_spec.rb'
- 'spec/serializers/project_mirror_serializer_spec.rb'
- 'spec/serializers/project_note_entity_spec.rb'
- 'spec/serializers/project_serializer_spec.rb'
@@ -7336,16 +7088,11 @@ RSpec/MissingFeatureCategory:
- 'spec/services/ci/job_artifacts/create_service_spec.rb'
- 'spec/services/ci/job_artifacts/delete_project_artifacts_service_spec.rb'
- 'spec/services/ci/job_artifacts/delete_service_spec.rb'
- - 'spec/services/ci/job_artifacts/destroy_all_expired_service_spec.rb'
- 'spec/services/ci/job_artifacts/destroy_associations_service_spec.rb'
- 'spec/services/ci/job_artifacts/destroy_batch_service_spec.rb'
- 'spec/services/ci/job_artifacts/expire_project_build_artifacts_service_spec.rb'
- 'spec/services/ci/job_artifacts/track_artifact_report_service_spec.rb'
- 'spec/services/ci/job_artifacts/update_unknown_locked_status_service_spec.rb'
- - 'spec/services/ci/job_token_scope/add_project_service_spec.rb'
- - 'spec/services/ci/job_token_scope/remove_project_service_spec.rb'
- - 'spec/services/ci/list_config_variables_service_spec.rb'
- - 'spec/services/ci/parse_dotenv_artifact_service_spec.rb'
- 'spec/services/ci/pipeline_artifacts/coverage_report_service_spec.rb'
- 'spec/services/ci/pipeline_artifacts/create_code_quality_mr_diff_report_service_spec.rb'
- 'spec/services/ci/pipeline_artifacts/destroy_all_expired_service_spec.rb'
@@ -7366,7 +7113,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/ci/prometheus_metrics/observe_histograms_service_spec.rb'
- 'spec/services/ci/queue/pending_builds_strategy_spec.rb'
- 'spec/services/ci/resource_groups/assign_resource_from_resource_group_service_spec.rb'
- - 'spec/services/ci/retry_job_service_spec.rb'
- 'spec/services/ci/retry_pipeline_service_spec.rb'
- 'spec/services/ci/run_scheduled_build_service_spec.rb'
- 'spec/services/ci/stuck_builds/drop_pending_service_spec.rb'
@@ -7376,7 +7122,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/ci/track_failed_build_service_spec.rb'
- 'spec/services/ci/unlock_artifacts_service_spec.rb'
- 'spec/services/ci/update_build_queue_service_spec.rb'
- - 'spec/services/ci/update_build_state_service_spec.rb'
- 'spec/services/ci/update_instance_variables_service_spec.rb'
- 'spec/services/ci/update_pending_build_service_spec.rb'
- 'spec/services/clusters/agent_tokens/create_service_spec.rb'
@@ -7385,7 +7130,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/clusters/agents/create_service_spec.rb'
- 'spec/services/clusters/agents/delete_expired_events_service_spec.rb'
- 'spec/services/clusters/agents/delete_service_spec.rb'
- - 'spec/services/clusters/agents/refresh_authorization_service_spec.rb'
- 'spec/services/clusters/build_kubernetes_namespace_service_spec.rb'
- 'spec/services/clusters/build_service_spec.rb'
- 'spec/services/clusters/cleanup/project_namespace_service_spec.rb'
@@ -7475,7 +7219,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/git/tag_hooks_service_spec.rb'
- 'spec/services/git/tag_push_service_spec.rb'
- 'spec/services/git/wiki_push_service/change_spec.rb'
- - 'spec/services/git/wiki_push_service_spec.rb'
- 'spec/services/google_cloud/create_cloudsql_instance_service_spec.rb'
- 'spec/services/google_cloud/create_service_accounts_service_spec.rb'
- 'spec/services/google_cloud/enable_cloud_run_service_spec.rb'
@@ -7519,7 +7262,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/import/gitlab_projects/create_project_service_spec.rb'
- 'spec/services/import/gitlab_projects/file_acquisition_strategies/file_upload_spec.rb'
- 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_s3_spec.rb'
- - 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_spec.rb'
- 'spec/services/import/prepare_service_spec.rb'
- 'spec/services/import/validate_remote_git_endpoint_service_spec.rb'
- 'spec/services/import_export_clean_up_service_spec.rb'
@@ -7550,8 +7292,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/issues/close_service_spec.rb'
- 'spec/services/issues/create_service_spec.rb'
- 'spec/services/issues/duplicate_service_spec.rb'
- - 'spec/services/issues/export_csv_service_spec.rb'
- - 'spec/services/issues/import_csv_service_spec.rb'
- 'spec/services/issues/move_service_spec.rb'
- 'spec/services/issues/prepare_import_csv_service_spec.rb'
- 'spec/services/issues/referenced_merge_requests_service_spec.rb'
@@ -7606,7 +7346,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/merge_requests/add_context_service_spec.rb'
- 'spec/services/merge_requests/add_spent_time_service_spec.rb'
- 'spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb'
- - 'spec/services/merge_requests/after_create_service_spec.rb'
- 'spec/services/merge_requests/approval_service_spec.rb'
- 'spec/services/merge_requests/assign_issues_service_spec.rb'
- 'spec/services/merge_requests/cleanup_refs_service_spec.rb'
@@ -7619,7 +7358,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/merge_requests/create_service_spec.rb'
- 'spec/services/merge_requests/delete_non_latest_diffs_service_spec.rb'
- 'spec/services/merge_requests/execute_approval_hooks_service_spec.rb'
- - 'spec/services/merge_requests/export_csv_service_spec.rb'
- 'spec/services/merge_requests/ff_merge_service_spec.rb'
- 'spec/services/merge_requests/get_urls_service_spec.rb'
- 'spec/services/merge_requests/handle_assignees_change_service_spec.rb'
@@ -7693,7 +7431,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/note_summary_spec.rb'
- 'spec/services/notes/build_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/post_process_service_spec.rb'
- 'spec/services/notes/quick_actions_service_spec.rb'
@@ -7715,19 +7452,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/packages/create_event_service_spec.rb'
- 'spec/services/packages/create_package_file_service_spec.rb'
- 'spec/services/packages/create_temporary_package_service_spec.rb'
- - 'spec/services/packages/debian/create_distribution_service_spec.rb'
- - 'spec/services/packages/debian/create_package_file_service_spec.rb'
- - 'spec/services/packages/debian/extract_changes_metadata_service_spec.rb'
- - 'spec/services/packages/debian/extract_deb_metadata_service_spec.rb'
- - 'spec/services/packages/debian/extract_metadata_service_spec.rb'
- - 'spec/services/packages/debian/find_or_create_incoming_service_spec.rb'
- - 'spec/services/packages/debian/find_or_create_package_service_spec.rb'
- - 'spec/services/packages/debian/generate_distribution_key_service_spec.rb'
- - 'spec/services/packages/debian/generate_distribution_service_spec.rb'
- - 'spec/services/packages/debian/parse_debian822_service_spec.rb'
- - 'spec/services/packages/debian/process_changes_service_spec.rb'
- - 'spec/services/packages/debian/sign_distribution_service_spec.rb'
- - 'spec/services/packages/debian/update_distribution_service_spec.rb'
- 'spec/services/packages/generic/create_package_file_service_spec.rb'
- 'spec/services/packages/generic/find_or_create_package_service_spec.rb'
- 'spec/services/packages/go/create_package_service_spec.rb'
@@ -7823,7 +7547,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/projects/import_error_filter_spec.rb'
- 'spec/services/projects/import_export/export_service_spec.rb'
- 'spec/services/projects/import_export/relation_export_service_spec.rb'
- - 'spec/services/projects/import_service_spec.rb'
- 'spec/services/projects/in_product_marketing_campaign_emails_service_spec.rb'
- 'spec/services/projects/lfs_pointers/lfs_download_link_list_service_spec.rb'
- 'spec/services/projects/lfs_pointers/lfs_download_service_spec.rb'
@@ -7863,7 +7586,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/prometheus/proxy_variable_substitution_service_spec.rb'
- 'spec/services/protected_branches/api_service_spec.rb'
- 'spec/services/protected_branches/cache_service_spec.rb'
- - 'spec/services/protected_branches/create_service_spec.rb'
- 'spec/services/protected_branches/destroy_service_spec.rb'
- 'spec/services/protected_branches/update_service_spec.rb'
- 'spec/services/protected_tags/create_service_spec.rb'
@@ -7920,7 +7642,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/suggestions/create_service_spec.rb'
- 'spec/services/suggestions/outdate_service_spec.rb'
- 'spec/services/system_hooks_service_spec.rb'
- - 'spec/services/system_note_service_spec.rb'
- 'spec/services/system_notes/alert_management_service_spec.rb'
- 'spec/services/system_notes/base_service_spec.rb'
- 'spec/services/system_notes/commit_service_spec.rb'
@@ -7946,7 +7667,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/todos/destroy/confidential_issue_service_spec.rb'
- 'spec/services/todos/destroy/design_service_spec.rb'
- 'spec/services/todos/destroy/destroyed_issuable_service_spec.rb'
- - 'spec/services/todos/destroy/group_private_service_spec.rb'
- 'spec/services/todos/destroy/project_private_service_spec.rb'
- 'spec/services/todos/destroy/unauthorized_features_service_spec.rb'
- 'spec/services/topics/merge_service_spec.rb'
@@ -7956,7 +7676,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/upload_service_spec.rb'
- 'spec/services/uploads/destroy_service_spec.rb'
- 'spec/services/user_preferences/update_service_spec.rb'
- - 'spec/services/user_project_access_changed_service_spec.rb'
- 'spec/services/users/activity_service_spec.rb'
- 'spec/services/users/approve_service_spec.rb'
- 'spec/services/users/authorized_build_service_spec.rb'
@@ -7997,7 +7716,6 @@ RSpec/MissingFeatureCategory:
- 'spec/services/users/validate_manual_otp_service_spec.rb'
- 'spec/services/users/validate_push_otp_service_spec.rb'
- 'spec/services/verify_pages_domain_service_spec.rb'
- - 'spec/services/web_hook_service_spec.rb'
- 'spec/services/web_hooks/destroy_service_spec.rb'
- 'spec/services/web_hooks/log_destroy_service_spec.rb'
- 'spec/services/web_hooks/log_execution_service_spec.rb'
@@ -8052,11 +7770,8 @@ RSpec/MissingFeatureCategory:
- 'spec/tasks/gitlab/artifacts/check_rake_spec.rb'
- 'spec/tasks/gitlab/artifacts/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/background_migrations_rake_spec.rb'
- - 'spec/tasks/gitlab/check_rake_spec.rb'
- 'spec/tasks/gitlab/cleanup_rake_spec.rb'
- 'spec/tasks/gitlab/container_registry_rake_spec.rb'
- - 'spec/tasks/gitlab/db/validate_config_rake_spec.rb'
- - 'spec/tasks/gitlab/db_rake_spec.rb'
- 'spec/tasks/gitlab/dependency_proxy/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/external_diffs_rake_spec.rb'
- 'spec/tasks/gitlab/generate_sample_prometheus_data_spec.rb'
@@ -8071,21 +7786,17 @@ RSpec/MissingFeatureCategory:
- 'spec/tasks/gitlab/password_rake_spec.rb'
- 'spec/tasks/gitlab/praefect_rake_spec.rb'
- 'spec/tasks/gitlab/refresh_project_statistics_build_artifacts_size_rake_spec.rb'
- - 'spec/tasks/gitlab/seed/group_seed_rake_spec.rb'
- 'spec/tasks/gitlab/setup_rake_spec.rb'
- 'spec/tasks/gitlab/shell_rake_spec.rb'
- 'spec/tasks/gitlab/sidekiq_rake_spec.rb'
- 'spec/tasks/gitlab/smtp_rake_spec.rb'
- 'spec/tasks/gitlab/snippets_rake_spec.rb'
- - 'spec/tasks/gitlab/storage_rake_spec.rb'
- 'spec/tasks/gitlab/task_helpers_spec.rb'
- 'spec/tasks/gitlab/terraform/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/uploads/check_rake_spec.rb'
- 'spec/tasks/gitlab/uploads/migrate_rake_spec.rb'
- - 'spec/tasks/gitlab/usage_data_rake_spec.rb'
- 'spec/tasks/gitlab/user_management_rake_spec.rb'
- 'spec/tasks/gitlab/web_hook_rake_spec.rb'
- - 'spec/tasks/gitlab/workhorse_rake_spec.rb'
- 'spec/tasks/gitlab/x509/update_rake_spec.rb'
- 'spec/tasks/migrate/schema_check_rake_spec.rb'
- 'spec/tasks/rubocop_rake_spec.rb'
@@ -8131,9 +7842,7 @@ RSpec/MissingFeatureCategory:
- 'spec/uploaders/lfs_object_uploader_spec.rb'
- 'spec/uploaders/metric_image_uploader_spec.rb'
- 'spec/uploaders/namespace_file_uploader_spec.rb'
- - 'spec/uploaders/object_storage/cdn/google_cdn_spec.rb'
- 'spec/uploaders/object_storage/cdn/google_ip_cache_spec.rb'
- - 'spec/uploaders/object_storage/cdn_spec.rb'
- 'spec/uploaders/object_storage_spec.rb'
- 'spec/uploaders/packages/composer/cache_uploader_spec.rb'
- 'spec/uploaders/packages/debian/component_file_uploader_spec.rb'
@@ -8175,7 +7884,6 @@ RSpec/MissingFeatureCategory:
- 'spec/validators/x509_certificate_credentials_validator_spec.rb'
- 'spec/views/admin/application_settings/_ci_cd.html.haml_spec.rb'
- 'spec/views/admin/application_settings/_eks.html.haml_spec.rb'
- - 'spec/views/admin/application_settings/_jira_connect.html.haml_spec.rb'
- 'spec/views/admin/application_settings/_package_registry.html.haml_spec.rb'
- 'spec/views/admin/application_settings/_repository_storage.html.haml_spec.rb'
- 'spec/views/admin/application_settings/ci_cd.html.haml_spec.rb'
@@ -8226,7 +7934,6 @@ RSpec/MissingFeatureCategory:
- 'spec/views/layouts/nav/sidebar/_admin.html.haml_spec.rb'
- 'spec/views/layouts/nav/sidebar/_group.html.haml_spec.rb'
- 'spec/views/layouts/nav/sidebar/_profile.html.haml_spec.rb'
- - 'spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb'
- 'spec/views/layouts/profile.html.haml_spec.rb'
- 'spec/views/layouts/signup_onboarding.html.haml_spec.rb'
- 'spec/views/layouts/simple_registration.html.haml_spec.rb'
@@ -8246,7 +7953,6 @@ RSpec/MissingFeatureCategory:
- 'spec/views/notify/push_to_merge_request_email.text.haml_spec.rb'
- 'spec/views/profiles/audit_log.html.haml_spec.rb'
- 'spec/views/profiles/keys/_form.html.haml_spec.rb'
- - 'spec/views/profiles/keys/_key.html.haml_spec.rb'
- 'spec/views/profiles/keys/_key_details.html.haml_spec.rb'
- 'spec/views/profiles/notifications/show.html.haml_spec.rb'
- 'spec/views/profiles/preferences/show.html.haml_spec.rb'
@@ -8329,7 +8035,6 @@ RSpec/MissingFeatureCategory:
- 'spec/workers/build_hooks_worker_spec.rb'
- 'spec/workers/build_queue_worker_spec.rb'
- 'spec/workers/build_success_worker_spec.rb'
- - 'spec/workers/bulk_import_worker_spec.rb'
- 'spec/workers/bulk_imports/entity_worker_spec.rb'
- 'spec/workers/bulk_imports/relation_export_worker_spec.rb'
- 'spec/workers/bulk_imports/stuck_import_worker_spec.rb'
@@ -8490,7 +8195,6 @@ RSpec/MissingFeatureCategory:
- 'spec/workers/gitlab_service_ping_worker_spec.rb'
- 'spec/workers/gitlab_shell_worker_spec.rb'
- 'spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb'
- - 'spec/workers/google_cloud/fetch_google_ip_list_worker_spec.rb'
- 'spec/workers/group_destroy_worker_spec.rb'
- 'spec/workers/group_export_worker_spec.rb'
- 'spec/workers/group_import_worker_spec.rb'
@@ -8553,7 +8257,6 @@ RSpec/MissingFeatureCategory:
- 'spec/workers/namespaces/schedule_aggregation_worker_spec.rb'
- 'spec/workers/namespaces/update_root_statistics_worker_spec.rb'
- 'spec/workers/new_issue_worker_spec.rb'
- - 'spec/workers/new_merge_request_worker_spec.rb'
- 'spec/workers/new_note_worker_spec.rb'
- 'spec/workers/object_pool/create_worker_spec.rb'
- 'spec/workers/object_pool/destroy_worker_spec.rb'
@@ -8567,8 +8270,6 @@ RSpec/MissingFeatureCategory:
- 'spec/workers/packages/cleanup_package_registry_worker_spec.rb'
- 'spec/workers/packages/composer/cache_cleanup_worker_spec.rb'
- 'spec/workers/packages/composer/cache_update_worker_spec.rb'
- - 'spec/workers/packages/debian/generate_distribution_worker_spec.rb'
- - 'spec/workers/packages/debian/process_changes_worker_spec.rb'
- 'spec/workers/packages/go/sync_packages_worker_spec.rb'
- 'spec/workers/packages/helm/extraction_worker_spec.rb'
- 'spec/workers/packages/mark_package_files_for_destruction_worker_spec.rb'
diff --git a/.rubocop_todo/security/compound_hash.yml b/.rubocop_todo/security/compound_hash.yml
new file mode 100644
index 00000000000..92f6fbb7b26
--- /dev/null
+++ b/.rubocop_todo/security/compound_hash.yml
@@ -0,0 +1,8 @@
+---
+Security/CompoundHash:
+ Details: grace period
+ Exclude:
+ - 'ee/app/models/vulnerabilities/finding.rb'
+ - 'ee/lib/gitlab/ci/reports/dependency_list/vulnerability.rb'
+ - 'lib/gitlab/ci/reports/security/finding.rb'
+ - 'lib/gitlab/ci/reports/security/finding_key.rb'
diff --git a/.rubocop_todo/style/numbered_parameters.yml b/.rubocop_todo/style/numbered_parameters.yml
new file mode 100644
index 00000000000..3251cc0bcad
--- /dev/null
+++ b/.rubocop_todo/style/numbered_parameters.yml
@@ -0,0 +1,84 @@
+---
+Style/NumberedParameters:
+ Details: grace period
+ Exclude:
+ - 'app/controllers/concerns/web_hooks/hook_actions.rb'
+ - 'app/controllers/graphql_controller.rb'
+ - 'app/controllers/import/bulk_imports_controller.rb'
+ - 'app/graphql/types/base_field.rb'
+ - 'app/graphql/types/current_user_todos.rb'
+ - 'app/graphql/types/design_management/design_fields.rb'
+ - 'app/helpers/colors_helper.rb'
+ - 'app/helpers/hooks_helper.rb'
+ - 'app/models/active_session.rb'
+ - 'app/models/bulk_imports/entity.rb'
+ - 'app/models/concerns/integrations/reset_secret_fields.rb'
+ - 'app/models/hooks/web_hook.rb'
+ - 'app/models/integration.rb'
+ - 'app/models/integrations/datadog.rb'
+ - 'app/models/integrations/youtrack.rb'
+ - 'app/models/project.rb'
+ - 'app/services/import/gitlab_projects/create_project_service.rb'
+ - 'app/services/merge_requests/update_service.rb'
+ - 'app/services/packages/rpm/parse_package_service.rb'
+ - 'app/services/packages/rpm/repository_metadata/update_xml_service.rb'
+ - 'app/services/web_hooks/log_execution_service.rb'
+ - 'ee/app/models/ee/project.rb'
+ - 'ee/app/models/security/finding.rb'
+ - 'ee/app/models/slack_integration.rb'
+ - 'ee/app/models/vulnerabilities/feedback.rb'
+ - 'ee/app/services/security/ingestion/tasks/hooks_execution.rb'
+ - 'ee/app/services/security/ingestion/tasks/ingest_remediations.rb'
+ - 'ee/app/services/security/store_findings_service.rb'
+ - 'ee/lib/ee/gitlab/quick_actions/users_extractor.rb'
+ - 'ee/spec/lib/gitlab/quick_actions/users_extractor_spec.rb'
+ - 'ee/spec/models/vulnerabilities/statistic_spec.rb'
+ - 'ee/spec/services/quick_actions/interpret_service_spec.rb'
+ - 'ee/spec/services/security/ingestion/tasks/ingest_remediations_spec.rb'
+ - 'lib/api/entities/hook.rb'
+ - 'lib/api/helpers/web_hooks_helpers.rb'
+ - 'lib/api/hooks/url_variables.rb'
+ - 'lib/error_tracking/sentry_client/issue.rb'
+ - 'lib/error_tracking/sentry_client/projects.rb'
+ - 'lib/error_tracking/sentry_client/repo.rb'
+ - 'lib/feature.rb'
+ - 'lib/gitlab/color.rb'
+ - 'lib/gitlab/error_tracking/error_repository/open_api_strategy.rb'
+ - 'lib/gitlab/github_import/representation/issue.rb'
+ - 'lib/gitlab/pagination/keyset/order.rb'
+ - 'lib/gitlab/quick_actions/users_extractor.rb'
+ - 'lib/gitlab/safe_request_loader.rb'
+ - 'lib/gitlab/usage_data_counters/ci_template_unique_counter.rb'
+ - 'lib/gitlab/zentao/client.rb'
+ - 'lib/gitlab_edition.rb'
+ - 'lib/tasks/gitlab/usage_data.rake'
+ - 'rubocop/check_graceful_task.rb'
+ - 'rubocop/cop/gitlab/namespaced_class.rb'
+ - 'rubocop/cop/graphql/enum_values.rb'
+ - 'rubocop/formatter/graceful_formatter.rb'
+ - 'spec/graphql/resolvers/concerns/resolves_ids_spec.rb'
+ - 'spec/graphql/types/board_list_type_spec.rb'
+ - 'spec/graphql/types/current_user_todos_type_spec.rb'
+ - 'spec/lib/bulk_imports/groups/stage_spec.rb'
+ - 'spec/lib/bulk_imports/projects/stage_spec.rb'
+ - 'spec/lib/gitlab/import_export/json/streaming_serializer_spec.rb'
+ - 'spec/lib/gitlab/quick_actions/users_extractor_spec.rb'
+ - 'spec/lib/gitlab/web_hooks/recursion_detection_spec.rb'
+ - 'spec/lib/gitlab/zentao/client_spec.rb'
+ - 'spec/models/bulk_imports/entity_spec.rb'
+ - 'spec/models/hooks/web_hook_spec.rb'
+ - 'spec/models/integration_spec.rb'
+ - 'spec/requests/api/graphql/mutations/issues/set_crm_contacts_spec.rb'
+ - 'spec/requests/api/graphql/project/merge_request_spec.rb'
+ - 'spec/requests/api/groups_spec.rb'
+ - 'spec/requests/recursive_webhook_detection_spec.rb'
+ - 'spec/rubocop/cop/file_decompression_spec.rb'
+ - 'spec/services/packages/rpm/repository_metadata/build_filelist_xml_service_spec.rb'
+ - 'spec/services/web_hook_service_spec.rb'
+ - 'spec/support/helpers/graphql_helpers.rb'
+ - 'spec/support/matchers/exceed_query_limit.rb'
+ - 'spec/support/shared_contexts/features/integrations/integrations_shared_context.rb'
+ - 'spec/support/shared_contexts/lib/sbom/package_url_shared_contexts.rb'
+ - 'spec/support/shared_examples/integrations/integration_settings_form.rb'
+ - 'spec/support/shared_examples/requests/api/hooks_shared_examples.rb'
+ - 'spec/support_specs/helpers/active_record/query_recorder_spec.rb'
diff --git a/.rubocop_todo/style/redundant_regexp_escape.yml b/.rubocop_todo/style/redundant_regexp_escape.yml
index 22608a8e1f5..9a54b73b64e 100644
--- a/.rubocop_todo/style/redundant_regexp_escape.yml
+++ b/.rubocop_todo/style/redundant_regexp_escape.yml
@@ -5,6 +5,7 @@ Style/RedundantRegexpEscape:
- 'app/controllers/help_controller.rb'
- 'app/controllers/import/bitbucket_server_controller.rb'
- 'app/helpers/emails_helper.rb'
+ - 'app/helpers/import_helper.rb'
- 'app/helpers/sidekiq_helper.rb'
- 'app/models/commit_status.rb'
- 'app/models/concerns/referable.rb'
@@ -16,17 +17,20 @@ Style/RedundantRegexpEscape:
- 'app/models/label.rb'
- 'app/models/license_template.rb'
- 'app/models/milestone.rb'
- - 'app/models/namespace.rb'
- 'app/models/operations/feature_flag.rb'
- 'app/models/releases/link.rb'
- 'app/models/snippet.rb'
- 'app/services/metrics/dashboard/grafana_metric_embed_service.rb'
- 'app/uploaders/file_uploader.rb'
+ - 'config/routes/admin.rb'
+ - 'config/routes/group.rb'
- 'config/routes/project.rb'
+ - 'config/routes/snippets.rb'
- 'config/routes/uploads.rb'
- 'ee/app/models/ee/epic.rb'
- 'ee/app/models/ee/iteration.rb'
- 'ee/app/models/ee/vulnerability.rb'
+ - 'ee/config/routes/admin.rb'
- 'ee/lib/ee/gitlab/path_regex.rb'
- 'ee/lib/elastic/latest/merge_request_class_proxy.rb'
- 'ee/lib/gitlab/geo/git_ssh_proxy.rb'
@@ -46,6 +50,7 @@ Style/RedundantRegexpEscape:
- 'lib/bulk_imports/common/pipelines/uploads_pipeline.rb'
- 'lib/csv_builder.rb'
- 'lib/gitlab/background_migration/backfill_integrations_enable_ssl_verification.rb'
+ - 'lib/gitlab/background_migration/update_jira_tracker_data_deployment_type_based_on_url.rb'
- 'lib/gitlab/ci/pipeline/expression/lexeme/not_matches.rb'
- 'lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb'
- 'lib/gitlab/diff/suggestions_parser.rb'
@@ -63,6 +68,7 @@ Style/RedundantRegexpEscape:
- 'lib/gitlab/private_commit_email.rb'
- 'lib/gitlab/push_options.rb'
- 'lib/gitlab/quick_actions/extractor.rb'
+ - 'lib/gitlab/quick_actions/timeline_text_and_date_time_separator.rb'
- 'lib/gitlab/regex.rb'
- 'lib/gitlab/search/abuse_detection.rb'
- 'lib/gitlab/task_helpers.rb'
@@ -73,7 +79,6 @@ Style/RedundantRegexpEscape:
- 'lib/product_analytics/tracker.rb'
- 'lib/tasks/gettext.rake'
- 'lib/tasks/gitlab/info.rake'
- - 'qa/qa/specs/features/ee/browser_ui/13_secure/license_compliance_spec.rb'
- 'qa/spec/runtime/key/ecdsa_spec.rb'
- 'qa/spec/runtime/key/ed25519_spec.rb'
- 'qa/spec/runtime/key/rsa_spec.rb'
diff --git a/.rubocop_todo/style/zero_length_predicate.yml b/.rubocop_todo/style/zero_length_predicate.yml
new file mode 100644
index 00000000000..f518a5c6f2b
--- /dev/null
+++ b/.rubocop_todo/style/zero_length_predicate.yml
@@ -0,0 +1,6 @@
+---
+# Cop supports --autocorrect.
+Style/ZeroLengthPredicate:
+ Details: grace period
+ Exclude:
+ - 'spec/requests/api/graphql/mutations/admin/sidekiq_queues/delete_jobs_spec.rb'
diff --git a/Gemfile b/Gemfile
index 9f2917dd35a..9f398ec2836 100644
--- a/Gemfile
+++ b/Gemfile
@@ -410,7 +410,7 @@ group :development, :test do
gem 'spring', '~> 4.1.0'
gem 'spring-commands-rspec', '~> 1.0.4'
- gem 'gitlab-styles', '~> 9.2.0', require: false
+ gem 'gitlab-styles', '~> 10.0.0', require: false
gem 'haml_lint', '~> 0.40.0', require: false
gem 'bundler-audit', '~> 0.7.0.1', require: false
diff --git a/Gemfile.checksum b/Gemfile.checksum
index 7a89e411ac7..41b0e8a3d8b 100644
--- a/Gemfile.checksum
+++ b/Gemfile.checksum
@@ -209,7 +209,7 @@
{"name":"gitlab-markup","version":"1.8.1","platform":"ruby","checksum":"ab1f9fd016977497c2af25b76341dea670533014f406861834a0bd99f646707b"},
{"name":"gitlab-net-dns","version":"0.9.1","platform":"ruby","checksum":"bcd1a08dcb31b731e8ff602d828de619d2d9f53f5812f6abacf11c720873d4cb"},
{"name":"gitlab-sidekiq-fetcher","version":"0.9.0","platform":"ruby","checksum":"54041aec059f20c8e6dfce394e1b60e0c0a9c7cef32da912a58abbd333e13897"},
-{"name":"gitlab-styles","version":"9.2.0","platform":"ruby","checksum":"7106e7fb2de01f0c4a8d074ccff5c1f37502eab98cc51c8b5dd72a081785cea4"},
+{"name":"gitlab-styles","version":"10.0.0","platform":"ruby","checksum":"8a1b20f7b5f351605ff4ed4ec648ef37226f2774d1e1377ed99389448d6913f0"},
{"name":"gitlab_chronic_duration","version":"0.10.6.2","platform":"ruby","checksum":"6dda4cfe7dca9b958f163ac8835c3d9cc70cf8df8cbb89bb2fbf9ba4375105fb"},
{"name":"gitlab_omniauth-ldap","version":"2.2.0","platform":"ruby","checksum":"bb4d20acb3b123ed654a8f6a47d3fac673ece7ed0b6992edb92dca14bad2838c"},
{"name":"globalid","version":"1.0.0","platform":"ruby","checksum":"1253641b1dc3392721c964351773755d75135d3d3c5cc65d88b0a3880a60bed8"},
@@ -415,7 +415,7 @@
{"name":"pact-mock_service","version":"3.10.0","platform":"ruby","checksum":"898ec3b8d96f1934d15941c701ca7d5fef5ccff32022d9a196fb82073cd95e27"},
{"name":"pact-support","version":"1.18.1","platform":"ruby","checksum":"4a25961c8b1c4132e433a8eaa838b1e6914c6d3aae48eee705b9860a5e8b0476"},
{"name":"parallel","version":"1.22.1","platform":"ruby","checksum":"ebdf1f0c51f182df38522f70ba770214940bef998cdb6e00f36492b29699761f"},
-{"name":"parser","version":"3.1.3.0","platform":"ruby","checksum":"4593da6a6c0dc1b0a0b47b68aa79c36655e19b9d8636f7c27d02a76cb7840e9f"},
+{"name":"parser","version":"3.2.0.0","platform":"ruby","checksum":"4398811625bc158ac16edb6f48639f8a920f65b92c0fd342c8420c907dab687e"},
{"name":"parslet","version":"1.8.2","platform":"ruby","checksum":"08d1ab3721cd3f175bfbee8788b2ddff71f92038f2d69bd65454c22bb9fbd98a"},
{"name":"pastel","version":"0.8.0","platform":"ruby","checksum":"481da9fb7d2f6e6b1a08faf11fa10363172dc40fd47848f096ae21209f805a75"},
{"name":"peek","version":"1.1.0","platform":"ruby","checksum":"d6501ead8cde46d8d8ed0d59eb6f0ba713d0a41c11a2c4a81447b2dce37b3ecc"},
@@ -505,13 +505,13 @@
{"name":"rspec-support","version":"3.12.0","platform":"ruby","checksum":"dd4d44b247ff679b95b5607ac5641d197a5f9b1d33f916123cb98fc5f917c58b"},
{"name":"rspec_junit_formatter","version":"0.6.0","platform":"ruby","checksum":"40dde674e6ae4e6cc0ff560da25497677e34fefd2338cc467a8972f602b62b15"},
{"name":"rspec_profiling","version":"0.0.6","platform":"ruby","checksum":"7a45697f79dcec9a174a0e26703465f6bd52ee78e8d798741240bfcef38f6e6e"},
-{"name":"rubocop","version":"1.38.0","platform":"ruby","checksum":"64a64a66d746bd417224c0292d08d8bf5affcfe8fbfc3d50a36810ee8c8a1eba"},
-{"name":"rubocop-ast","version":"1.23.0","platform":"ruby","checksum":"fe4bafaa0a6ccf400849fb720f9dd2428b07b00fcdeeec33a8f1146e0c1e38e2"},
-{"name":"rubocop-gitlab-security","version":"0.1.1","platform":"ruby","checksum":"96f6ed727847a5876ddfc89ee0399438a1aef7934db773c7efce907e2720006c"},
-{"name":"rubocop-graphql","version":"0.18.0","platform":"ruby","checksum":"f1c43999fb9ef0e32b30e2ce2fa0ddb1f3a6215c85baf3fdf9753a0bb96bc998"},
-{"name":"rubocop-performance","version":"1.15.1","platform":"ruby","checksum":"8d4f1839e7043364269d15b8191eadda29a4bb937ec29e74fdb074511d048d02"},
-{"name":"rubocop-rails","version":"2.17.3","platform":"ruby","checksum":"7d857aa339577c9e0e156cc3f5b68b63efc429eba39863cbd8a496c7f80e65af"},
-{"name":"rubocop-rspec","version":"2.16.0","platform":"ruby","checksum":"b33c5f048182bdb43885958f4115865d49438694fffac98b5406f70302e7ece6"},
+{"name":"rubocop","version":"1.43.0","platform":"ruby","checksum":"d08127ff6d99b7217b9ac27b51be872270bc7f19151706d799e18a5e4777adc6"},
+{"name":"rubocop-ast","version":"1.24.1","platform":"ruby","checksum":"6dd194309d48ebb1c558329ffd46a04e2fdf1652d8cde574f963c392fe52bfdd"},
+{"name":"rubocop-capybara","version":"2.17.0","platform":"ruby","checksum":"bbdc757d091788fafc37a634c54e1a930489498a36f81321c5c50cf0a76498c0"},
+{"name":"rubocop-graphql","version":"0.19.0","platform":"ruby","checksum":"ba4b2fc91c9f0fda47e0870a6ae15a1e5525d6caffcb150dc88b00caaacc3e43"},
+{"name":"rubocop-performance","version":"1.16.0","platform":"ruby","checksum":"cc764f84bf37c6ef269973e686c3b33f258ffd612130e40856b25103de06efd8"},
+{"name":"rubocop-rails","version":"2.17.4","platform":"ruby","checksum":"8004149a14372d3d6cededd000357879fa7eb0421403a7a26bc717e2a98bbedb"},
+{"name":"rubocop-rspec","version":"2.18.1","platform":"ruby","checksum":"41c6455630fc98b809ebca047413389e2b7e3f68975028365c07bfea878db5ee"},
{"name":"ruby-fogbugz","version":"0.3.0","platform":"ruby","checksum":"5e04cde474648f498a71cf1e1a7ab42c66b953862fbe224f793ec0a7a1d5f657"},
{"name":"ruby-magic","version":"0.5.4","platform":"ruby","checksum":"2c17b185130d10a83791f63a40baa358c4b138af37da3f4dab53690121c421d5"},
{"name":"ruby-progressbar","version":"1.11.0","platform":"ruby","checksum":"cc127db3866dc414ffccbf92928a241e585b3aa2b758a5563e74a6ee0f57d50a"},
@@ -629,7 +629,7 @@
{"name":"unf_ext","version":"0.0.8.2","platform":"x64-mingw-ucrt","checksum":"580e3c1ca389f10ca17d13ddeb5dc3fbdc80ce2c2b8cdb15c08af3a3b45a60fc"},
{"name":"unf_ext","version":"0.0.8.2","platform":"x64-mingw32","checksum":"f7e4c01774c91eb22e30d53dfc40ffbbb5a175f785c8f6f1be17ad96a0b29ed0"},
{"name":"unf_ext","version":"0.0.8.2","platform":"x86-mingw32","checksum":"6d44c13c98924bebd15ebdd4ed196ead403a0770ac03304570873349fda2a208"},
-{"name":"unicode-display_width","version":"1.8.0","platform":"ruby","checksum":"0292132d364d59fcdd83f144910c48b3c8332b28a14c5c04bb093dd165600488"},
+{"name":"unicode-display_width","version":"2.4.2","platform":"ruby","checksum":"6a10205d1a19ca790c4e53064ba93f09d9eb234bf6bd135d9deb6001c21428be"},
{"name":"unicode_utils","version":"1.4.0","platform":"ruby","checksum":"b922d0cf2313b6b7136ada6645ce7154ffc86418ca07d53b058efe9eb72f2a40"},
{"name":"uniform_notifier","version":"1.16.0","platform":"ruby","checksum":"99b39ee4a0864e3b49f375b5e5803eb26d35ed6eb1719c96407573a87bc4dbb5"},
{"name":"unleash","version":"3.2.2","platform":"ruby","checksum":"0f6e56498de920de66a01bceffb93933693ade646bb853fc70eb16bd1026b93b"},
diff --git a/Gemfile.lock b/Gemfile.lock
index 0c0f9c646c4..a6df239f1a2 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -599,13 +599,12 @@ GEM
gitlab-sidekiq-fetcher (0.9.0)
json (>= 2.5)
sidekiq (~> 6.1)
- gitlab-styles (9.2.0)
- rubocop (~> 1.38.0)
- rubocop-gitlab-security (~> 0.1.1)
- rubocop-graphql (~> 0.14)
- rubocop-performance (~> 1.14)
- rubocop-rails (~> 2.15)
- rubocop-rspec (~> 2.15)
+ gitlab-styles (10.0.0)
+ rubocop (~> 1.43.0)
+ rubocop-graphql (~> 0.18)
+ rubocop-performance (~> 1.15)
+ rubocop-rails (~> 2.17)
+ rubocop-rspec (~> 2.18)
gitlab_chronic_duration (0.10.6.2)
numerizer (~> 0.2)
gitlab_omniauth-ldap (2.2.0)
@@ -1073,7 +1072,7 @@ GEM
expgen (~> 0.1)
rainbow (~> 3.1.1)
parallel (1.22.1)
- parser (3.1.3.0)
+ parser (3.2.0.0)
ast (~> 2.4.1)
parslet (1.8.2)
pastel (0.8.0)
@@ -1270,31 +1269,32 @@ GEM
pg
rails
sqlite3
- rubocop (1.38.0)
+ rubocop (1.43.0)
json (~> 2.3)
parallel (~> 1.10)
- parser (>= 3.1.2.1)
+ parser (>= 3.2.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
- rubocop-ast (>= 1.23.0, < 2.0)
+ rubocop-ast (>= 1.24.1, < 2.0)
ruby-progressbar (~> 1.7)
- unicode-display_width (>= 1.4.0, < 3.0)
- rubocop-ast (1.23.0)
+ unicode-display_width (>= 2.4.0, < 3.0)
+ rubocop-ast (1.24.1)
parser (>= 3.1.1.0)
- rubocop-gitlab-security (0.1.1)
- rubocop (>= 0.51)
- rubocop-graphql (0.18.0)
+ rubocop-capybara (2.17.0)
+ rubocop (~> 1.41)
+ rubocop-graphql (0.19.0)
rubocop (>= 0.87, < 2)
- rubocop-performance (1.15.1)
+ rubocop-performance (1.16.0)
rubocop (>= 1.7.0, < 2.0)
rubocop-ast (>= 0.4.0)
- rubocop-rails (2.17.3)
+ rubocop-rails (2.17.4)
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
- rubocop-rspec (2.16.0)
+ rubocop-rspec (2.18.1)
rubocop (~> 1.33)
+ rubocop-capybara (~> 2.17)
ruby-fogbugz (0.3.0)
crack (~> 0.4)
multipart-post (~> 2.0)
@@ -1516,7 +1516,7 @@ GEM
unf (0.1.4)
unf_ext
unf_ext (0.0.8.2)
- unicode-display_width (1.8.0)
+ unicode-display_width (2.4.2)
unicode_utils (1.4.0)
uniform_notifier (1.16.0)
unleash (3.2.2)
@@ -1685,7 +1685,7 @@ DEPENDENCIES
gitlab-markup (~> 1.8.0)
gitlab-net-dns (~> 0.9.1)
gitlab-sidekiq-fetcher (= 0.9.0)
- gitlab-styles (~> 9.2.0)
+ gitlab-styles (~> 10.0.0)
gitlab_chronic_duration (~> 0.10.6.2)
gitlab_omniauth-ldap (~> 2.2.0)
gon (~> 6.4.0)
diff --git a/app/models/ability.rb b/app/models/ability.rb
index b15143c8c9c..eb645bcd653 100644
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -29,7 +29,7 @@ class Ability
# A list of users that can read confidential notes in a project
def users_that_can_read_internal_notes(users, note_parent)
DeclarativePolicy.subject_scope do
- users.select { |u| allowed?(u, :reporter_access, note_parent) }
+ users.select { |u| allowed?(u, :read_internal_note, note_parent) }
end
end
diff --git a/app/policies/group_policy.rb b/app/policies/group_policy.rb
index abb3616c58f..6cc65248914 100644
--- a/app/policies/group_policy.rb
+++ b/app/policies/group_policy.rb
@@ -329,6 +329,9 @@ class GroupPolicy < Namespaces::GroupProjectNamespaceSharedPolicy
prevent :create_group_runners
end
+ # Should be matched with ProjectPolicy#read_internal_note
+ rule { admin | reporter }.enable :read_internal_note
+
def access_level(for_any_session: false)
return GroupMember::NO_ACCESS if @user.nil?
return GroupMember::NO_ACCESS unless user_is_user?
diff --git a/app/policies/issuable_policy.rb b/app/policies/issuable_policy.rb
index 52796ed1a1d..496708a9737 100644
--- a/app/policies/issuable_policy.rb
+++ b/app/policies/issuable_policy.rb
@@ -57,11 +57,6 @@ class IssuablePolicy < BasePolicy
enable :read_issuable
enable :read_issuable_participables
end
-
- # This rule replicates permissions in NotePolicy#can_read_internal_note
- rule { can?(:reporter_access) | admin }.policy do
- enable :read_internal_note
- end
end
IssuablePolicy.prepend_mod_with('IssuablePolicy')
diff --git a/app/policies/note_policy.rb b/app/policies/note_policy.rb
index ccc095f37da..189609c2600 100644
--- a/app/policies/note_policy.rb
+++ b/app/policies/note_policy.rb
@@ -26,12 +26,6 @@ class NotePolicy < BasePolicy
@subject.noteable.work_item_type.widgets.include?(::WorkItems::Widgets::Notes)
end
- # Should be matched with IssuablePolicy#read_internal_note
- # and EpicPolicy#read_internal_note
- condition(:can_read_internal_note) do
- access_level >= Gitlab::Access::REPORTER || admin?
- end
-
rule { ~notes_widget_enabled }.prevent_all
rule { ~editable }.prevent :admin_note
@@ -67,11 +61,11 @@ class NotePolicy < BasePolicy
enable :resolve_note
end
- rule { can_read_internal_note }.policy do
+ rule { can?(:read_internal_note) }.policy do
enable :mark_note_as_internal
end
- rule { internal & ~can_read_internal_note }.policy do
+ rule { internal & ~can?(:read_internal_note) }.policy do
prevent :read_note
prevent :admin_note
prevent :resolve_note
diff --git a/app/policies/project_policy.rb b/app/policies/project_policy.rb
index 629428fd087..875520d24be 100644
--- a/app/policies/project_policy.rb
+++ b/app/policies/project_policy.rb
@@ -862,6 +862,9 @@ class ProjectPolicy < BasePolicy
prevent :create_project_runners
end
+ # Should be matched with GroupPolicy#read_internal_note
+ rule { admin | can?(:reporter_access) }.enable :read_internal_note
+
private
def user_is_user?
diff --git a/data/deprecations/15-9-required-pipeline-configuration.yml b/data/deprecations/15-9-required-pipeline-configuration.yml
index 625d00cb07e..4aa3a83c51e 100644
--- a/data/deprecations/15-9-required-pipeline-configuration.yml
+++ b/data/deprecations/15-9-required-pipeline-configuration.yml
@@ -9,9 +9,10 @@
stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/389467 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
- Required Pipeline Configuration will be removed in the 16.0 release. This impacts Self-Managed users on the Ultimate license.
+ Required Pipeline Configuration will be removed in the 16.0 release. This impacts self-managed users on the Ultimate license.
- We recommend replacing this with an alternative [compliance solution](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#configure-a-compliance-pipeline) that is available now. We recommend this alternative solution because it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
+ We recommend replacing this with an alternative [compliance solution](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#compliance-pipelines)
+ that is available now. We recommend this alternative solution because it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
#
# OPTIONAL END OF SUPPORT FIELDS
#
diff --git a/db/migrate/20230116143310_add_pages_unique_domain_columns_to_project_settings.rb b/db/migrate/20230116143310_add_pages_unique_domain_columns_to_project_settings.rb
new file mode 100644
index 00000000000..53c4f429243
--- /dev/null
+++ b/db/migrate/20230116143310_add_pages_unique_domain_columns_to_project_settings.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+class AddPagesUniqueDomainColumnsToProjectSettings < Gitlab::Database::Migration[2.1]
+ def up
+ add_column :project_settings, :pages_unique_domain_enabled, :boolean, default: false, null: false
+ add_column :project_settings, :pages_unique_domain, :text # rubocop: disable Migration/AddLimitToTextColumns
+ end
+
+ def down
+ remove_column :project_settings, :pages_unique_domain_enabled, :boolean
+ remove_column :project_settings, :pages_unique_domain, :text
+ end
+end
diff --git a/db/migrate/20230116143311_add_project_settings_pages_unique_domain_limit.rb b/db/migrate/20230116143311_add_project_settings_pages_unique_domain_limit.rb
new file mode 100644
index 00000000000..53c2a344a2c
--- /dev/null
+++ b/db/migrate/20230116143311_add_project_settings_pages_unique_domain_limit.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+class AddProjectSettingsPagesUniqueDomainLimit < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ def up
+ add_text_limit :project_settings, :pages_unique_domain, 63
+ end
+
+ def down
+ remove_text_limit :project_settings, :pages_unique_domain
+ end
+end
diff --git a/db/migrate/20230116143312_add_project_settings_pages_unique_domain_unique_index.rb b/db/migrate/20230116143312_add_project_settings_pages_unique_domain_unique_index.rb
new file mode 100644
index 00000000000..3e6fea00ed2
--- /dev/null
+++ b/db/migrate/20230116143312_add_project_settings_pages_unique_domain_unique_index.rb
@@ -0,0 +1,20 @@
+# frozen_string_literal: true
+
+class AddProjectSettingsPagesUniqueDomainUniqueIndex < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ def up
+ add_concurrent_index :project_settings,
+ :pages_unique_domain,
+ unique: true,
+ where: 'pages_unique_domain IS NOT NULL',
+ name: 'unique_index_for_project_pages_unique_domain'
+ end
+
+ def down
+ remove_concurrent_index :project_settings,
+ :pages_unique_domain,
+ unique: true,
+ name: 'unique_index_for_project_pages_unique_domain'
+ end
+end
diff --git a/db/post_migrate/20230208100917_fix_partition_ids_for_ci_pipeline_variable.rb b/db/post_migrate/20230208100917_fix_partition_ids_for_ci_pipeline_variable.rb
new file mode 100644
index 00000000000..9901e6af4ae
--- /dev/null
+++ b/db/post_migrate/20230208100917_fix_partition_ids_for_ci_pipeline_variable.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+class FixPartitionIdsForCiPipelineVariable < Gitlab::Database::Migration[2.1]
+ MIGRATION = 'RebalancePartitionId'
+ DELAY_INTERVAL = 2.minutes.freeze
+ TABLE = :ci_pipeline_variables
+ BATCH_SIZE = 2_000
+ SUB_BATCH_SIZE = 200
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_ci
+
+ def up
+ return unless Gitlab.com?
+
+ queue_batched_background_migration(
+ MIGRATION,
+ TABLE,
+ :id,
+ job_interval: DELAY_INTERVAL,
+ batch_size: BATCH_SIZE,
+ sub_batch_size: SUB_BATCH_SIZE
+ )
+ end
+
+ def down
+ return unless Gitlab.com?
+
+ delete_batched_background_migration(MIGRATION, TABLE, :id, [])
+ end
+end
diff --git a/db/post_migrate/20230208103009_fix_partition_ids_for_ci_job_artifact.rb b/db/post_migrate/20230208103009_fix_partition_ids_for_ci_job_artifact.rb
new file mode 100644
index 00000000000..d1b25639638
--- /dev/null
+++ b/db/post_migrate/20230208103009_fix_partition_ids_for_ci_job_artifact.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+class FixPartitionIdsForCiJobArtifact < Gitlab::Database::Migration[2.1]
+ MIGRATION = 'RebalancePartitionId'
+ DELAY_INTERVAL = 2.minutes
+ TABLE = :ci_job_artifacts
+ BATCH_SIZE = 5_000
+ SUB_BATCH_SIZE = 500
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_ci
+
+ def up
+ return unless Gitlab.com?
+
+ queue_batched_background_migration(
+ MIGRATION,
+ TABLE,
+ :id,
+ job_interval: DELAY_INTERVAL,
+ batch_size: BATCH_SIZE,
+ sub_batch_size: SUB_BATCH_SIZE
+ )
+ end
+
+ def down
+ return unless Gitlab.com?
+
+ delete_batched_background_migration(MIGRATION, TABLE, :id, [])
+ end
+end
diff --git a/db/post_migrate/20230209090702_fix_partition_ids_for_ci_build_report_result.rb b/db/post_migrate/20230209090702_fix_partition_ids_for_ci_build_report_result.rb
new file mode 100644
index 00000000000..d21d986ee31
--- /dev/null
+++ b/db/post_migrate/20230209090702_fix_partition_ids_for_ci_build_report_result.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+class FixPartitionIdsForCiBuildReportResult < Gitlab::Database::Migration[2.1]
+ MIGRATION = 'RebalancePartitionId'
+ DELAY_INTERVAL = 2.minutes.freeze
+ TABLE = :ci_build_report_results
+ BATCH_SIZE = 2_000
+ SUB_BATCH_SIZE = 200
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_ci
+
+ def up
+ return unless Gitlab.com?
+
+ queue_batched_background_migration(
+ MIGRATION,
+ TABLE,
+ :build_id,
+ job_interval: DELAY_INTERVAL,
+ batch_size: BATCH_SIZE,
+ sub_batch_size: SUB_BATCH_SIZE
+ )
+ end
+
+ def down
+ return unless Gitlab.com?
+
+ delete_batched_background_migration(MIGRATION, TABLE, :build_id, [])
+ end
+end
diff --git a/db/post_migrate/20230209092204_fix_partition_ids_for_ci_build_trace_metadata.rb b/db/post_migrate/20230209092204_fix_partition_ids_for_ci_build_trace_metadata.rb
new file mode 100644
index 00000000000..25087dcbfa4
--- /dev/null
+++ b/db/post_migrate/20230209092204_fix_partition_ids_for_ci_build_trace_metadata.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+class FixPartitionIdsForCiBuildTraceMetadata < Gitlab::Database::Migration[2.1]
+ MIGRATION = 'RebalancePartitionId'
+ DELAY_INTERVAL = 2.minutes.freeze
+ TABLE = :ci_build_trace_metadata
+ BATCH_SIZE = 3_000
+ SUB_BATCH_SIZE = 300
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_ci
+
+ def up
+ return unless Gitlab.com?
+
+ queue_batched_background_migration(
+ MIGRATION,
+ TABLE,
+ :build_id,
+ job_interval: DELAY_INTERVAL,
+ batch_size: BATCH_SIZE,
+ sub_batch_size: SUB_BATCH_SIZE
+ )
+ end
+
+ def down
+ return unless Gitlab.com?
+
+ delete_batched_background_migration(MIGRATION, TABLE, :build_id, [])
+ end
+end
diff --git a/db/schema_migrations/20230116143310 b/db/schema_migrations/20230116143310
new file mode 100644
index 00000000000..c33f9990531
--- /dev/null
+++ b/db/schema_migrations/20230116143310
@@ -0,0 +1 @@
+992b178c63147915cf4f45c9ff7e9853fd69dc23c5dec758ea1707c5d5f0db47 \ No newline at end of file
diff --git a/db/schema_migrations/20230116143311 b/db/schema_migrations/20230116143311
new file mode 100644
index 00000000000..fca11c68a25
--- /dev/null
+++ b/db/schema_migrations/20230116143311
@@ -0,0 +1 @@
+a447880939f84f9c9e0b1d4afd2bc8a73bf930798b44a66387b350136ab822c9 \ No newline at end of file
diff --git a/db/schema_migrations/20230116143312 b/db/schema_migrations/20230116143312
new file mode 100644
index 00000000000..f704f78d6f8
--- /dev/null
+++ b/db/schema_migrations/20230116143312
@@ -0,0 +1 @@
+0df7cea4aee522e901ea673debf4244ba2f9b85059fd6ee3b2d46a8171d85fe2 \ No newline at end of file
diff --git a/db/schema_migrations/20230208100917 b/db/schema_migrations/20230208100917
new file mode 100644
index 00000000000..1862dcf6738
--- /dev/null
+++ b/db/schema_migrations/20230208100917
@@ -0,0 +1 @@
+55d9815e9590681cedf6e5817ef6419db882837325b9d3c86ae34419339b090d \ No newline at end of file
diff --git a/db/schema_migrations/20230208103009 b/db/schema_migrations/20230208103009
new file mode 100644
index 00000000000..097184279f6
--- /dev/null
+++ b/db/schema_migrations/20230208103009
@@ -0,0 +1 @@
+2f8fda2911fdbff0e7d0d90c6288c003e36471a6e107271227a6d67bda2775a0 \ No newline at end of file
diff --git a/db/schema_migrations/20230209090702 b/db/schema_migrations/20230209090702
new file mode 100644
index 00000000000..9eb84a3b5d0
--- /dev/null
+++ b/db/schema_migrations/20230209090702
@@ -0,0 +1 @@
+f3f0611b503bf2be35a201541826a33dd0ff58a0b41c6588303317f2b171d567 \ No newline at end of file
diff --git a/db/schema_migrations/20230209092204 b/db/schema_migrations/20230209092204
new file mode 100644
index 00000000000..c6432053853
--- /dev/null
+++ b/db/schema_migrations/20230209092204
@@ -0,0 +1 @@
+f3962b71ec4b63a2e056872fc155ae4e41cdef8c989728b5e60553c6d602ccee \ No newline at end of file
diff --git a/db/structure.sql b/db/structure.sql
index b0fd5ccb7d0..3e645adcb3c 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -20777,6 +20777,9 @@ CREATE TABLE project_settings (
mirror_branch_regex text,
allow_pipeline_trigger_approve_deployment boolean DEFAULT false NOT NULL,
emails_enabled boolean DEFAULT true NOT NULL,
+ pages_unique_domain_enabled boolean DEFAULT false NOT NULL,
+ pages_unique_domain text,
+ CONSTRAINT check_1a30456322 CHECK ((char_length(pages_unique_domain) <= 63)),
CONSTRAINT check_2981f15877 CHECK ((char_length(jitsu_key) <= 100)),
CONSTRAINT check_3a03e7557a CHECK ((char_length(previous_default_branch) <= 4096)),
CONSTRAINT check_3ca5cbffe6 CHECK ((char_length(issue_branch_template) <= 255)),
@@ -32306,6 +32309,8 @@ CREATE UNIQUE INDEX unique_ci_builds_token_encrypted_and_partition_id ON ci_buil
CREATE UNIQUE INDEX unique_index_ci_build_pending_states_on_partition_id_build_id ON ci_build_pending_states USING btree (partition_id, build_id);
+CREATE UNIQUE INDEX unique_index_for_project_pages_unique_domain ON project_settings USING btree (pages_unique_domain) WHERE (pages_unique_domain IS NOT NULL);
+
CREATE UNIQUE INDEX unique_merge_request_metrics_by_merge_request_id ON merge_request_metrics USING btree (merge_request_id);
CREATE UNIQUE INDEX unique_projects_on_name_namespace_id ON projects USING btree (name, namespace_id);
diff --git a/doc/administration/compliance.md b/doc/administration/compliance.md
index ee7476ed6d4..592c110b446 100644
--- a/doc/administration/compliance.md
+++ b/doc/administration/compliance.md
@@ -50,7 +50,7 @@ compliance:
- [**Compliance frameworks**](../user/group/compliance_frameworks.md) (for groups): Create a custom
compliance framework at the group level to describe the type of compliance requirements any child project needs to follow.
-- [**Compliance pipelines**](../user/group/compliance_frameworks.md#configure-a-compliance-pipeline) (for groups): Define a
+- [**Compliance pipelines**](../user/group/compliance_frameworks.md#compliance-pipelines) (for groups): Define a
pipeline configuration to run for any projects with a given compliance framework.
## Audit management
diff --git a/doc/administration/geo/replication/datatypes.md b/doc/administration/geo/replication/datatypes.md
index 8bb060b3a08..27e1b990b2b 100644
--- a/doc/administration/geo/replication/datatypes.md
+++ b/doc/administration/geo/replication/datatypes.md
@@ -151,10 +151,8 @@ and verification status on a **secondary** site.
You can keep track of the progress to implement the missing items in
these epics/issues:
-- [Geo: Build a scalable, self-service Geo replication and verification framework](https://gitlab.com/groups/gitlab-org/-/epics/2161)
- [Geo: Improve the self-service Geo replication framework](https://gitlab.com/groups/gitlab-org/-/epics/3761)
- [Geo: Move existing blobs to framework](https://gitlab.com/groups/gitlab-org/-/epics/3588)
-- [Geo: Add unreplicated data types](https://gitlab.com/groups/gitlab-org/-/epics/893)
### Replicated data types behind a feature flag
diff --git a/doc/ci/yaml/index.md b/doc/ci/yaml/index.md
index a0015d39adb..d5c0fe1d41d 100644
--- a/doc/ci/yaml/index.md
+++ b/doc/ci/yaml/index.md
@@ -374,7 +374,7 @@ start. Jobs in the current stage are not stopped and continue to run.
- If a job does not specify a [`stage`](#stage), the job is assigned the `test` stage.
- If a stage is defined but no jobs use it, the stage is not visible in the pipeline,
- which can help [compliance pipeline configurations](../../user/group/compliance_frameworks.md#configure-a-compliance-pipeline):
+ which can help [compliance pipeline configurations](../../user/group/compliance_frameworks.md#compliance-pipelines):
- Stages can be defined in the compliance configuration but remain hidden if not used.
- The defined stages become visible when developers use them in job definitions.
diff --git a/doc/update/deprecations.md b/doc/update/deprecations.md
index 7c4b38446d9..bc1d6332b7a 100644
--- a/doc/update/deprecations.md
+++ b/doc/update/deprecations.md
@@ -257,9 +257,10 @@ WARNING:
This is a [breaking change](https://docs.gitlab.com/ee/development/deprecation_guidelines/).
Review the details carefully before upgrading.
-Required Pipeline Configuration will be removed in the 16.0 release. This impacts Self-Managed users on the Ultimate license.
+Required Pipeline Configuration will be removed in the 16.0 release. This impacts self-managed users on the Ultimate license.
-We recommend replacing this with an alternative [compliance solution](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#configure-a-compliance-pipeline) that is available now. We recommend this alternative solution because it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
+We recommend replacing this with an alternative [compliance solution](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#compliance-pipelines)
+that is available now. We recommend this alternative solution because it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
</div>
diff --git a/doc/user/admin_area/settings/continuous_integration.md b/doc/user/admin_area/settings/continuous_integration.md
index 4796bd9334b..aa171fe4536 100644
--- a/doc/user/admin_area/settings/continuous_integration.md
+++ b/doc/user/admin_area/settings/continuous_integration.md
@@ -247,7 +247,7 @@ To enable or disable the banner:
> [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/352316) from GitLab Premium to GitLab Ultimate in 15.0.
NOTE:
-An alternative [compliance solution](../../group/compliance_frameworks.md#configure-a-compliance-pipeline)
+An alternative [compliance solution](../../group/compliance_frameworks.md#compliance-pipelines)
is available. We recommend this alternative solution because it provides greater flexibility,
allowing required pipelines to be assigned to specific compliance framework labels.
diff --git a/doc/user/application_security/get-started-security.md b/doc/user/application_security/get-started-security.md
index cec2090e5ef..c1524c4b517 100644
--- a/doc/user/application_security/get-started-security.md
+++ b/doc/user/application_security/get-started-security.md
@@ -37,7 +37,7 @@ The following steps help you get the most from GitLab application security tools
remediating existing vulnerabilities and preventing the introduction of new ones.
1. Enable other scan types such as [SAST](sast/index.md), [DAST](dast/index.md),
[Fuzz testing](coverage_fuzzing/index.md), or [Container Scanning](container_scanning/index.md).
-1. Use [Compliance Pipelines](../group/compliance_frameworks.md#configure-a-compliance-pipeline)
+1. Use [Compliance Pipelines](../group/compliance_frameworks.md#compliance-pipelines)
or [Scan Execution Policies](policies/scan-execution-policies.md) to enforce required scan types
and ensure separation of duties between security and engineering.
1. Consider enabling [Review Apps](../../development/testing_guide/review_apps.md) to allow for DAST
diff --git a/doc/user/application_security/index.md b/doc/user/application_security/index.md
index a118dfb71a8..76bde4f9c14 100644
--- a/doc/user/application_security/index.md
+++ b/doc/user/application_security/index.md
@@ -487,7 +487,7 @@ Security and compliance teams must ensure that security scans:
GitLab provides two methods of accomplishing this, each with advantages and disadvantages.
-- [Compliance framework pipelines](../group/compliance_frameworks.md#configure-a-compliance-pipeline)
+- [Compliance framework pipelines](../group/compliance_frameworks.md#compliance-pipelines)
are recommended when:
- Scan execution enforcement is required for any scanner that uses a GitLab template, such as SAST IaC, DAST, Dependency Scanning,
diff --git a/doc/user/application_security/policies/scan-execution-policies.md b/doc/user/application_security/policies/scan-execution-policies.md
index f624bc95036..26c7e1d9c77 100644
--- a/doc/user/application_security/policies/scan-execution-policies.md
+++ b/doc/user/application_security/policies/scan-execution-policies.md
@@ -17,7 +17,7 @@ of a job name collision, GitLab adds a dash and a number to the job name. GitLab
no longer conflicts with existing job names. If you create a policy at the group level, it applies to every child project
or subgroup. You cannot edit a group-level policy from a child project or subgroup.
-This feature has some overlap with [compliance framework pipelines](../../group/compliance_frameworks.md#configure-a-compliance-pipeline),
+This feature has some overlap with [compliance framework pipelines](../../group/compliance_frameworks.md#compliance-pipelines),
as we have not [unified the user experience for these two features](https://gitlab.com/groups/gitlab-org/-/epics/7312).
For details on the similarities and differences between these features, see
[Enforce scan execution](../index.md#enforce-scan-execution).
diff --git a/doc/user/group/compliance_frameworks.md b/doc/user/group/compliance_frameworks.md
index 01248d55b2d..84cca5800c2 100644
--- a/doc/user/group/compliance_frameworks.md
+++ b/doc/user/group/compliance_frameworks.md
@@ -11,7 +11,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
You can create a compliance framework that is a label to identify that your project has certain compliance
requirements or needs additional oversight. The label can optionally enforce
-[compliance pipeline configuration](#configure-a-compliance-pipeline) to the projects on which it is
+[compliance pipeline configuration](#compliance-pipelines) to the projects on which it is
[applied](../project/settings/index.md#add-a-compliance-framework-to-a-project).
Compliance frameworks are created on top-level groups. Group owners can create, edit, and delete compliance frameworks:
@@ -87,7 +87,7 @@ mutation {
}
```
-## Configure a compliance pipeline **(ULTIMATE)**
+## Compliance pipelines **(ULTIMATE)**
> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/3156) in GitLab 13.9, disabled behind `ff_evaluate_group_level_compliance_pipeline` [feature flag](../../administration/feature_flags.md).
> - [Enabled by default](https://gitlab.com/gitlab-org/gitlab/-/issues/300324) in GitLab 13.11.
@@ -106,11 +106,18 @@ However, the compliance pipeline configuration can reference the `.gitlab-ci.yml
See [example configuration](#example-configuration) for help configuring a compliance pipeline that runs jobs from
labeled project pipeline configuration.
-Be aware that users have no way of knowing that a compliance pipeline has been configured and might be confused
-why their own pipelines are not running at all, or include jobs that they did not define themselves. When authoring
-pipelines on a labeled project, there is no indication that a compliance pipeline has been configured. The only marker
-at the project level is the compliance framework label itself, but the label does not say whether the framework has a
-compliance pipeline configured or not.
+### Effect on labeled projects
+
+Users have no way of knowing that a compliance pipeline has been configured and might be confused why their own
+pipelines are not running at all, or include jobs that they did not define themselves.
+
+When authoring pipelines on a labeled project, there is no indication that a compliance pipeline has been configured.
+The only marker at the project level is the compliance framework label itself, but the label does not say whether the
+framework has a compliance pipeline configured or not.
+
+Therefore, communicate with project users about compliance pipeline configuration to reduce uncertainty and confusion.
+
+### Configure a compliance pipeline
To configure a compliance pipeline:
@@ -211,10 +218,10 @@ include: # Execute individual project's configuration (if project contains .git
The `rules` configuration in the `include` definition avoids circular inclusion in case the compliance pipeline must be able to run in the host project itself.
You can leave it out if your compliance pipeline only ever runs in labeled projects.
-#### CF pipelines in Merge Requests originating in project forks
+#### Compliance pipelines in merge requests originating in project forks
-When an MR originates in a fork, the branch to be merged usually only exists in the fork.
-When creating such an MR against a project with CF pipelines, the above snippet fails with a
+When a merge request originates in a fork, the branch to be merged usually only exists in the fork.
+When creating such a merge request against a project with compliance pipelines, the above snippet fails with a
`Project <project-name> reference <branch-name> does not exist!` error message.
This error occurs because in the context of the target project, `$CI_COMMIT_REF_NAME` evaluates to a non-existing
branch name.
diff --git a/rubocop/ext/path_util.rb b/rubocop/ext/path_util.rb
deleted file mode 100644
index 3b54f046c7b..00000000000
--- a/rubocop/ext/path_util.rb
+++ /dev/null
@@ -1,26 +0,0 @@
-# frozen_string_literal: true
-
-module RuboCop
- module PathUtil
- def match_path?(pattern, path)
- case pattern
- when String
- matched = if /[*{}]/.match?(pattern)
- File.fnmatch?(pattern, path, File::FNM_PATHNAME | File::FNM_EXTGLOB)
- else
- pattern == path
- end
-
- matched || hidden_file_in_not_hidden_dir?(pattern, path)
- when Regexp
- begin
- pattern.match?(path)
- rescue ArgumentError => e
- return false if e.message.start_with?('invalid byte sequence')
-
- raise e
- end
- end
- end
- end
-end
diff --git a/rubocop/ext/variable_force.rb b/rubocop/ext/variable_force.rb
deleted file mode 100644
index def284513ed..00000000000
--- a/rubocop/ext/variable_force.rb
+++ /dev/null
@@ -1,17 +0,0 @@
-# frozen_string_literal: true
-
-module RuboCop
- module Ext
- module VariableForce
- def scanned_node?(node)
- scanned_nodes.include?(node)
- end
-
- def scanned_nodes
- @scanned_nodes ||= Set.new.compare_by_identity
- end
- end
- end
-end
-
-RuboCop::Cop::VariableForce.prepend RuboCop::Ext::VariableForce
diff --git a/rubocop/rubocop.rb b/rubocop/rubocop.rb
index c17ecf054ce..42882966b85 100644
--- a/rubocop/rubocop.rb
+++ b/rubocop/rubocop.rb
@@ -1,11 +1,6 @@
# rubocop:disable Naming/FileName
# frozen_string_literal: true
-# Performance improvements to be upstreamed soon:
-# See https://gitlab.com/gitlab-org/gitlab/-/issues/377469
-require_relative 'ext/path_util'
-require_relative 'ext/variable_force'
-
# Auto-require all cops under `rubocop/cop/**/*.rb`
Dir[File.join(__dir__, 'cop', '**', '*.rb')].sort.each { |file| require file }
diff --git a/spec/migrations/20230208100917_fix_partition_ids_for_ci_pipeline_variable_spec.rb b/spec/migrations/20230208100917_fix_partition_ids_for_ci_pipeline_variable_spec.rb
new file mode 100644
index 00000000000..fb0e1fe17ec
--- /dev/null
+++ b/spec/migrations/20230208100917_fix_partition_ids_for_ci_pipeline_variable_spec.rb
@@ -0,0 +1,58 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require_migration!
+
+RSpec.describe FixPartitionIdsForCiPipelineVariable, migration: :gitlab_ci, feature_category: :continuous_integration do
+ let(:migration) { described_class::MIGRATION }
+
+ context 'when on saas' do
+ before do
+ allow(Gitlab).to receive(:com?).and_return(true)
+ end
+
+ describe '#up' do
+ it 'schedules background jobs for each batch of ci_pipeline_variables' do
+ migrate!
+
+ expect(migration).to have_scheduled_batched_migration(
+ gitlab_schema: :gitlab_ci,
+ table_name: :ci_pipeline_variables,
+ column_name: :id,
+ interval: described_class::DELAY_INTERVAL,
+ batch_size: described_class::BATCH_SIZE,
+ sub_batch_size: described_class::SUB_BATCH_SIZE
+ )
+ end
+ end
+
+ describe '#down' do
+ it 'deletes all batched migration records' do
+ migrate!
+ schema_migrate_down!
+
+ expect(migration).not_to have_scheduled_batched_migration
+ end
+ end
+ end
+
+ context 'when on self-managed instance' do
+ let(:migration) { described_class.new }
+
+ describe '#up' do
+ it 'does not schedule background job' do
+ expect(migration).not_to receive(:queue_batched_background_migration)
+
+ migration.up
+ end
+ end
+
+ describe '#down' do
+ it 'does not delete background job' do
+ expect(migration).not_to receive(:delete_batched_background_migration)
+
+ migration.down
+ end
+ end
+ end
+end
diff --git a/spec/migrations/20230208103009_fix_partition_ids_for_ci_job_artifact_spec.rb b/spec/migrations/20230208103009_fix_partition_ids_for_ci_job_artifact_spec.rb
new file mode 100644
index 00000000000..de2386c6a0d
--- /dev/null
+++ b/spec/migrations/20230208103009_fix_partition_ids_for_ci_job_artifact_spec.rb
@@ -0,0 +1,58 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require_migration!
+
+RSpec.describe FixPartitionIdsForCiJobArtifact, migration: :gitlab_ci, feature_category: :continuous_integration do
+ let(:migration) { described_class::MIGRATION }
+
+ context 'when on saas' do
+ before do
+ allow(Gitlab).to receive(:com?).and_return(true)
+ end
+
+ describe '#up' do
+ it 'schedules background jobs for each batch of ci_job_artifacts' do
+ migrate!
+
+ expect(migration).to have_scheduled_batched_migration(
+ gitlab_schema: :gitlab_ci,
+ table_name: :ci_job_artifacts,
+ column_name: :id,
+ interval: described_class::DELAY_INTERVAL,
+ batch_size: described_class::BATCH_SIZE,
+ sub_batch_size: described_class::SUB_BATCH_SIZE
+ )
+ end
+ end
+
+ describe '#down' do
+ it 'deletes all batched migration records' do
+ migrate!
+ schema_migrate_down!
+
+ expect(migration).not_to have_scheduled_batched_migration
+ end
+ end
+ end
+
+ context 'when on self-managed instance' do
+ let(:migration) { described_class.new }
+
+ describe '#up' do
+ it 'does not schedule background job' do
+ expect(migration).not_to receive(:queue_batched_background_migration)
+
+ migration.up
+ end
+ end
+
+ describe '#down' do
+ it 'does not delete background job' do
+ expect(migration).not_to receive(:delete_batched_background_migration)
+
+ migration.down
+ end
+ end
+ end
+end
diff --git a/spec/migrations/20230209090702_fix_partition_ids_for_ci_build_report_result_spec.rb b/spec/migrations/20230209090702_fix_partition_ids_for_ci_build_report_result_spec.rb
new file mode 100644
index 00000000000..f0ac8239f58
--- /dev/null
+++ b/spec/migrations/20230209090702_fix_partition_ids_for_ci_build_report_result_spec.rb
@@ -0,0 +1,60 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require_migration!
+
+RSpec.describe FixPartitionIdsForCiBuildReportResult,
+ migration: :gitlab_ci,
+ feature_category: :continuous_integration do
+ let(:migration) { described_class::MIGRATION }
+
+ context 'when on saas' do
+ before do
+ allow(Gitlab).to receive(:com?).and_return(true)
+ end
+
+ describe '#up' do
+ it 'schedules background jobs for each batch of ci_build_report_results' do
+ migrate!
+
+ expect(migration).to have_scheduled_batched_migration(
+ gitlab_schema: :gitlab_ci,
+ table_name: :ci_build_report_results,
+ column_name: :build_id,
+ interval: described_class::DELAY_INTERVAL,
+ batch_size: described_class::BATCH_SIZE,
+ sub_batch_size: described_class::SUB_BATCH_SIZE
+ )
+ end
+ end
+
+ describe '#down' do
+ it 'deletes all batched migration records' do
+ migrate!
+ schema_migrate_down!
+
+ expect(migration).not_to have_scheduled_batched_migration
+ end
+ end
+ end
+
+ context 'when on self-managed instance' do
+ let(:migration) { described_class.new }
+
+ describe '#up' do
+ it 'does not schedule background job' do
+ expect(migration).not_to receive(:queue_batched_background_migration)
+
+ migration.up
+ end
+ end
+
+ describe '#down' do
+ it 'does not delete background job' do
+ expect(migration).not_to receive(:delete_batched_background_migration)
+
+ migration.down
+ end
+ end
+ end
+end
diff --git a/spec/migrations/20230209092204_fix_partition_ids_for_ci_build_trace_metadata_spec.rb b/spec/migrations/20230209092204_fix_partition_ids_for_ci_build_trace_metadata_spec.rb
new file mode 100644
index 00000000000..a93ba36d9ae
--- /dev/null
+++ b/spec/migrations/20230209092204_fix_partition_ids_for_ci_build_trace_metadata_spec.rb
@@ -0,0 +1,60 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require_migration!
+
+RSpec.describe FixPartitionIdsForCiBuildTraceMetadata,
+ migration: :gitlab_ci,
+ feature_category: :continuous_integration do
+ let(:migration) { described_class::MIGRATION }
+
+ context 'when on saas' do
+ before do
+ allow(Gitlab).to receive(:com?).and_return(true)
+ end
+
+ describe '#up' do
+ it 'schedules background jobs for each batch of ci_build_trace_metadata' do
+ migrate!
+
+ expect(migration).to have_scheduled_batched_migration(
+ gitlab_schema: :gitlab_ci,
+ table_name: :ci_build_trace_metadata,
+ column_name: :build_id,
+ interval: described_class::DELAY_INTERVAL,
+ batch_size: described_class::BATCH_SIZE,
+ sub_batch_size: described_class::SUB_BATCH_SIZE
+ )
+ end
+ end
+
+ describe '#down' do
+ it 'deletes all batched migration records' do
+ migrate!
+ schema_migrate_down!
+
+ expect(migration).not_to have_scheduled_batched_migration
+ end
+ end
+ end
+
+ context 'when on self-managed instance' do
+ let(:migration) { described_class.new }
+
+ describe '#up' do
+ it 'does not schedule background job' do
+ expect(migration).not_to receive(:queue_batched_background_migration)
+
+ migration.up
+ end
+ end
+
+ describe '#down' do
+ it 'does not delete background job' do
+ expect(migration).not_to receive(:delete_batched_background_migration)
+
+ migration.down
+ end
+ end
+ end
+end
diff --git a/spec/requests/api/project_attributes.yml b/spec/requests/api/project_attributes.yml
index 7f38b4eec83..60406f380a5 100644
--- a/spec/requests/api/project_attributes.yml
+++ b/spec/requests/api/project_attributes.yml
@@ -162,6 +162,8 @@ project_setting:
- mirror_branch_regex
- allow_pipeline_trigger_approve_deployment
- emails_enabled
+ - pages_unique_domain_enabled
+ - pages_unique_domain
build_service_desk_setting: # service_desk_setting
unexposed_attributes:
diff --git a/spec/support/shared_contexts/policies/group_policy_shared_context.rb b/spec/support/shared_contexts/policies/group_policy_shared_context.rb
index fddcecbe125..4c081c8464e 100644
--- a/spec/support/shared_contexts/policies/group_policy_shared_context.rb
+++ b/spec/support/shared_contexts/policies/group_policy_shared_context.rb
@@ -36,6 +36,7 @@ RSpec.shared_context 'GroupPolicy context' do
read_prometheus
read_crm_contact
read_crm_organization
+ read_internal_note
]
end
@@ -81,7 +82,7 @@ RSpec.shared_context 'GroupPolicy context' do
]
end
- let(:admin_permissions) { %i[read_confidential_issues] }
+ let(:admin_permissions) { %i[read_confidential_issues read_internal_note] }
before_all do
group.add_guest(guest)
diff --git a/spec/support/shared_contexts/policies/project_policy_shared_context.rb b/spec/support/shared_contexts/policies/project_policy_shared_context.rb
index 616f8f2345c..afc7fc8766f 100644
--- a/spec/support/shared_contexts/policies/project_policy_shared_context.rb
+++ b/spec/support/shared_contexts/policies/project_policy_shared_context.rb
@@ -39,6 +39,7 @@ RSpec.shared_context 'ProjectPolicy context' do
read_harbor_registry read_deployment read_environment read_merge_request
read_metrics_dashboard_annotation read_pipeline read_prometheus
read_sentry_issue update_issue create_merge_request_in read_external_emails
+ read_internal_note
]
end
@@ -89,6 +90,13 @@ RSpec.shared_context 'ProjectPolicy context' do
]
end
+ let(:admin_permissions) do
+ %i[
+ read_project_for_iids update_max_artifacts_size read_storage_disk_path
+ owner_access admin_remote_mirror read_internal_note
+ ]
+ end
+
# Used in EE specs
let(:additional_guest_permissions) { [] }
let(:additional_reporter_permissions) { [] }
diff --git a/spec/support/shared_examples/policies/project_policy_shared_examples.rb b/spec/support/shared_examples/policies/project_policy_shared_examples.rb
index 15d56c402d1..9ec1b8b3f5a 100644
--- a/spec/support/shared_examples/policies/project_policy_shared_examples.rb
+++ b/spec/support/shared_examples/policies/project_policy_shared_examples.rb
@@ -333,6 +333,7 @@ RSpec.shared_examples 'project policies as admin with admin mode' do
expect_disallowed(*team_member_reporter_permissions)
expect_allowed(*developer_permissions)
expect_allowed(*maintainer_permissions)
+ expect_allowed(*admin_permissions)
expect_allowed(*owner_permissions)
end
@@ -354,6 +355,7 @@ RSpec.shared_examples 'project policies as admin with admin mode' do
expect_disallowed(*team_member_reporter_permissions)
expect_disallowed(*developer_permissions)
expect_disallowed(*maintainer_permissions)
+ expect_disallowed(*admin_permissions)
expect_disallowed(*owner_permissions)
end
end