diff --git a/.rubocop_todo/performance/method_object_as_block.yml b/.rubocop_todo/performance/method_object_as_block.yml index 8524376772ee5c4c67406b930b4037797a0e2e63..25efdeef023e720b25aa5f2de18deb67ea288905 100644 --- a/.rubocop_todo/performance/method_object_as_block.yml +++ b/.rubocop_todo/performance/method_object_as_block.yml @@ -1,45 +1,12 @@ --- Performance/MethodObjectAsBlock: Exclude: - - 'app/controllers/concerns/metrics_dashboard.rb' - - 'app/controllers/concerns/requires_whitelisted_monitoring_client.rb' - - 'app/controllers/projects/merge_requests/drafts_controller.rb' - - 'app/finders/bulk_imports/entities_finder.rb' - - 'app/models/clusters/cluster.rb' - - 'app/models/concerns/prometheus_adapter.rb' - - 'app/models/concerns/token_authenticatable.rb' - - 'app/models/container_repository.rb' - - 'app/models/programming_language.rb' - - 'app/presenters/packages/detail/package_presenter.rb' - - 'app/services/ci/pipeline_processing/atomic_processing_service.rb' - - 'app/services/ci/prometheus_metrics/observe_histograms_service.rb' - - 'app/services/concerns/users/participable_service.rb' - - 'app/services/discussions/resolve_service.rb' - - 'app/services/jira/requests/projects/list_service.rb' - - 'app/services/merge_requests/refresh_service.rb' - - 'app/services/packages/debian/generate_distribution_service.rb' - - 'app/services/projects/container_repository/delete_tags_service.rb' - - 'app/workers/gitlab/import/stuck_import_job.rb' - - 'app/workers/object_storage/migrate_uploads_worker.rb' - - 'config/initializers/0_inject_enterprise_edition_module.rb' - - 'ee/app/finders/security/findings_finder.rb' - - 'ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb' - - 'ee/app/services/dashboard/projects/create_service.rb' - - 'ee/app/services/security/ingestion/ingest_reports_service.rb' - - 'ee/app/services/security/ingestion/tasks/ingest_vulnerability_statistics.rb' - - 'ee/app/services/security/store_grouped_scans_service.rb' - - 'ee/lib/ee/container_registry/client.rb' - - 'ee/lib/ee/gitlab/ci/config_ee.rb' - - 'ee/lib/ee/gitlab/etag_caching/router/rails.rb' - - 'ee/lib/gitlab/ingestion/bulk_insertable_task.rb' - - 'ee/spec/services/groups/participants_service_spec.rb' - 'lib/api/helpers/packages/conan/api_helpers.rb' - 'lib/bulk_imports/pipeline.rb' - 'lib/container_registry/base_client.rb' - 'lib/container_registry/gitlab_api_client.rb' - 'lib/gitlab/ci/build/rules/rule.rb' - 'lib/gitlab/ci/build/rules/rule/clause/exists.rb' - - 'lib/gitlab/ci/config/external/mapper.rb' - 'lib/gitlab/ci/config/yaml/tags/resolver.rb' - 'lib/gitlab/ci/pipeline/chain/create_deployments.rb' - 'lib/gitlab/ci/pipeline/chain/ensure_environments.rb' @@ -72,12 +39,6 @@ Performance/MethodObjectAsBlock: - 'lib/gitlab/sidekiq_queue.rb' - 'lib/gitlab/uploads/migration_helper.rb' - 'lib/gitlab/utils.rb' - - 'lib/peek/views/detailed_view.rb' - - 'lib/unnested_in_filters/rewriter.rb' - - 'qa/qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb' - - 'rubocop/cop/avoid_return_from_blocks.rb' - - 'rubocop/cop/gitlab/mark_used_feature_flags.rb' - - 'rubocop/rubocop.rb' - 'spec/graphql/resolvers/concerns/caching_array_resolver_spec.rb' - 'spec/lib/api/entities/merge_request_basic_spec.rb' - 'spec/lib/gitlab/import_export/import_test_coverage_spec.rb' @@ -87,6 +48,3 @@ Performance/MethodObjectAsBlock: - 'spec/support/helpers/migrations_helpers.rb' - 'spec/support/shared_examples/models/active_record_enum_shared_examples.rb' - 'spec/support_specs/helpers/stub_feature_flags_spec.rb' - - 'tooling/lib/tooling/find_codeowners.rb' - - 'tooling/lib/tooling/test_map_packer.rb' - - 'tooling/quality/test_level.rb' diff --git a/app/controllers/concerns/metrics_dashboard.rb b/app/controllers/concerns/metrics_dashboard.rb index d4e8e95e016c6b73f3138cc6e3ff76f5a2826f18..338c3af235b058fc0237bfa7b5a371acea5cbab5 100644 --- a/app/controllers/concerns/metrics_dashboard.rb +++ b/app/controllers/concerns/metrics_dashboard.rb @@ -37,7 +37,7 @@ def metrics_dashboard def all_dashboards dashboard_finder .find_all_paths(project_for_dashboard) - .map(&method(:amend_dashboard)) + .map { |dashboard| amend_dashboard(dashboard) } end def amend_dashboard(dashboard) diff --git a/app/controllers/concerns/requires_whitelisted_monitoring_client.rb b/app/controllers/concerns/requires_whitelisted_monitoring_client.rb index e98c1a308876df4ccbc72b56fa79eea5c0022f67..ef3d281589aa6354e2433940cc7c0440fc695641 100644 --- a/app/controllers/concerns/requires_whitelisted_monitoring_client.rb +++ b/app/controllers/concerns/requires_whitelisted_monitoring_client.rb @@ -22,7 +22,7 @@ def client_ip_whitelisted? end def ip_whitelist - @ip_whitelist ||= Settings.monitoring.ip_whitelist.map(&IPAddr.method(:new)) + @ip_whitelist ||= Settings.monitoring.ip_whitelist.map { |ip| IPAddr.new(ip) } end def valid_token? diff --git a/app/controllers/projects/merge_requests/drafts_controller.rb b/app/controllers/projects/merge_requests/drafts_controller.rb index 74bb3ad1a63a6f76066bbb210664a8b76a26e80d..fbf9348df15f2f7fbd524df1afc7b8074ae62f41 100644 --- a/app/controllers/projects/merge_requests/drafts_controller.rb +++ b/app/controllers/projects/merge_requests/drafts_controller.rb @@ -145,7 +145,7 @@ def prepare_notes_for_rendering(notes) user_ids = notes.map(&:author_id) project.team.max_member_access_for_user_ids(user_ids) - notes.map(&method(:render_draft_note)) + notes.map { |note| render_draft_note(note) } end def render_draft_note(note) diff --git a/app/finders/bulk_imports/entities_finder.rb b/app/finders/bulk_imports/entities_finder.rb index 78446f104d03d3535b94f90473fd52e6a98d245a..2b6507cc7b5c9d8a8233f915d0039003b3b9d0d5 100644 --- a/app/finders/bulk_imports/entities_finder.rb +++ b/app/finders/bulk_imports/entities_finder.rb @@ -12,9 +12,9 @@ def execute ::BulkImports::Entity .preload(:failures) # rubocop: disable CodeReuse/ActiveRecord .by_user_id(user.id) - .then(&method(:filter_by_bulk_import)) - .then(&method(:filter_by_status)) - .then(&method(:sort)) + .then { |entities| filter_by_bulk_import(entities) } + .then { |entities| filter_by_status(entities) } + .then { |entities| sort(entities) } end private diff --git a/app/models/clusters/cluster.rb b/app/models/clusters/cluster.rb index 25d41d68b9e91f358662e739a0b2af38cd4ea339..af6cafc4a621f9392bf22aacd8acd61156c5ed74 100644 --- a/app/models/clusters/cluster.rb +++ b/app/models/clusters/cluster.rb @@ -245,7 +245,7 @@ def calculate_reactive_cache end def persisted_applications - APPLICATIONS_ASSOCIATIONS.map(&method(:public_send)).compact + APPLICATIONS_ASSOCIATIONS.filter_map { |association_name| public_send(association_name) } # rubocop:disable GitlabSecurity/PublicSend end def applications diff --git a/app/models/concerns/prometheus_adapter.rb b/app/models/concerns/prometheus_adapter.rb index df29701711924d8e05df38620979e1f0d5395626..b85ac9ad4a6e12d49dbe587d63f426b511eeefa5 100644 --- a/app/models/concerns/prometheus_adapter.rb +++ b/app/models/concerns/prometheus_adapter.rb @@ -49,7 +49,9 @@ def query(query_name, *args) query_class = query_klass_for(query_name) query_args = build_query_args(*args) - with_reactive_cache(query_class.name, *query_args, &query_class.method(:transform_reactive_result)) + with_reactive_cache(query_class.name, *query_args) do |result| + query_class.transform_reactive_result(result) + end end # Cache metrics for specific environment diff --git a/app/models/concerns/token_authenticatable.rb b/app/models/concerns/token_authenticatable.rb index d91ec161b84213c7039a65f8483c83c1de45253c..cc3e8f174b3c58063874b7cbba4ea67410813c81 100644 --- a/app/models/concerns/token_authenticatable.rb +++ b/app/models/concerns/token_authenticatable.rb @@ -86,7 +86,7 @@ def add_authentication_token_field(token_field, options = {}) def token_authenticatable_module @token_authenticatable_module ||= - const_set(:TokenAuthenticatable, Module.new).tap(&method(:include)) + const_set(:TokenAuthenticatable, Module.new).tap { |mod| include mod } end end end diff --git a/app/models/container_repository.rb b/app/models/container_repository.rb index db0fcd915b39e190241668a3f4e32b384f0eccfc..a1079abe5fd6d95a08c2846f37c75f4bcb39feac 100644 --- a/app/models/container_repository.rb +++ b/app/models/container_repository.rb @@ -497,7 +497,7 @@ def delete_tags! digests = tags.map { |tag| tag.digest }.compact.to_set - digests.map(&method(:delete_tag_by_digest)).all? + digests.map { |digest| delete_tag_by_digest(digest) }.all? end def delete_tag_by_digest(digest) diff --git a/app/models/programming_language.rb b/app/models/programming_language.rb index 4156c6725183d7fa042c2e92a75f7c29a6b17469..e3693046423a5918373e2728d47eec0327ae132d 100644 --- a/app/models/programming_language.rb +++ b/app/models/programming_language.rb @@ -7,7 +7,7 @@ class ProgrammingLanguage < ApplicationRecord # Returns all programming languages which match any of the given names (case # insensitively). scope :with_name_case_insensitive, ->(*names) do - sanitized_names = names.map(&method(:sanitize_sql_like)) + sanitized_names = names.map { |name| sanitize_sql_like(name) } where(arel_table[:name].matches_any(sanitized_names)) end diff --git a/app/presenters/packages/detail/package_presenter.rb b/app/presenters/packages/detail/package_presenter.rb index b82b558f0cd0dcd85e75d68de60176c39a86ca31..37d144d9e98a9f26d199343b3ca9e3243aa1b53c 100644 --- a/app/presenters/packages/detail/package_presenter.rb +++ b/app/presenters/packages/detail/package_presenter.rb @@ -29,7 +29,7 @@ def detail_view package_detail[:nuget_metadatum] = @package.nuget_metadatum if @package.nuget_metadatum package_detail[:composer_metadatum] = @package.composer_metadatum if @package.composer_metadatum package_detail[:conan_metadatum] = @package.conan_metadatum if @package.conan_metadatum - package_detail[:dependency_links] = @package.dependency_links.map(&method(:build_dependency_links)) + package_detail[:dependency_links] = @package.dependency_links.map { |link| build_dependency_links(link) } package_detail[:pipeline] = build_pipeline_info(@package.pipeline) if @package.pipeline package_detail[:pipelines] = build_pipeline_infos(@package.pipelines) if @package.pipelines.present? diff --git a/app/services/ci/pipeline_processing/atomic_processing_service.rb b/app/services/ci/pipeline_processing/atomic_processing_service.rb index 508d9c3f2e1b1635380cf26af6177f6000f4ebb2..2b8eb104be5b6a12e825fcb019376d35284e03b9 100644 --- a/app/services/ci/pipeline_processing/atomic_processing_service.rb +++ b/app/services/ci/pipeline_processing/atomic_processing_service.rb @@ -42,13 +42,14 @@ def process! end def update_stages! - pipeline.stages.ordered.each(&method(:update_stage!)) + pipeline.stages.ordered.each { |stage| update_stage!(stage) } end def update_stage!(stage) # Update processables for a given stage in bulk/slices - ids = @collection.created_processable_ids_for_stage_position(stage.position) - ids.in_groups_of(BATCH_SIZE, false, &method(:update_processables!)) + @collection + .created_processable_ids_for_stage_position(stage.position) + .in_groups_of(BATCH_SIZE, false) { |ids| update_processables!(ids) } status = @collection.status_for_stage_position(stage.position) stage.set_status(status) @@ -62,7 +63,7 @@ def update_processables!(ids) .ordered_by_stage .select_with_aggregated_needs(project) - created_processables.each(&method(:update_processable!)) + created_processables.each { |processable| update_processable!(processable) } end def update_pipeline! diff --git a/app/services/ci/prometheus_metrics/observe_histograms_service.rb b/app/services/ci/prometheus_metrics/observe_histograms_service.rb index 6bd3d2121ba97e2b225317e36e20c21c5573a1ad..10b3d61247be026cc5ac1adad95f348d69b7ea02 100644 --- a/app/services/ci/prometheus_metrics/observe_histograms_service.rb +++ b/app/services/ci/prometheus_metrics/observe_histograms_service.rb @@ -27,7 +27,7 @@ def initialize(project, params) def execute params .fetch(:histograms, []) - .each(&method(:observe)) + .each { |data| observe(data) } ServiceResponse.success(http_status: :created) end diff --git a/app/services/concerns/users/participable_service.rb b/app/services/concerns/users/participable_service.rb index 281b25080906c6c9cbb2239e91ea958a5fce32ad..1a03b444b687824c55d4eeb776bb6112f4a9f4b3 100644 --- a/app/services/concerns/users/participable_service.rb +++ b/app/services/concerns/users/participable_service.rb @@ -38,7 +38,7 @@ def groups end def render_participants_as_hash(participants) - participants.map(&method(:participant_as_hash)) + participants.map { |participant| participant_as_hash(participant) } end def participant_as_hash(participant) diff --git a/app/services/discussions/resolve_service.rb b/app/services/discussions/resolve_service.rb index 54fc452ac85841799c06ecff13d1d645e3f8dade..20b4ec0921f38fb7b29cf99561c99658e94911a8 100644 --- a/app/services/discussions/resolve_service.rb +++ b/app/services/discussions/resolve_service.rb @@ -16,7 +16,7 @@ def initialize(project, user = nil, params = {}) end def execute - discussions.each(&method(:resolve_discussion)) + discussions.each { |discussion| resolve_discussion(discussion) } after_resolve_cleanup end diff --git a/app/services/jira/requests/projects/list_service.rb b/app/services/jira/requests/projects/list_service.rb index ac9e9bf0be9f25e89d3139b89b931972dd184dd8..09cab3c659bb3ed644898eabee0951c110508707 100644 --- a/app/services/jira/requests/projects/list_service.rb +++ b/app/services/jira/requests/projects/list_service.rb @@ -29,7 +29,9 @@ def build_service_response(response) end def map_projects(response) - response.map { |v| JIRA::Resource::Project.build(client, v) }.select(&method(:match_query?)) + response + .map { |v| JIRA::Resource::Project.build(client, v) } + .select { |jira_project| match_query?(jira_project) } end def match_query?(jira_project) diff --git a/app/services/merge_requests/refresh_service.rb b/app/services/merge_requests/refresh_service.rb index ce49d5dd43caec00fb1e6f7d76bcea9aa8057fbb..6599b4732ff69b7aa0697ff54a64c12b86cffd51 100644 --- a/app/services/merge_requests/refresh_service.rb +++ b/app/services/merge_requests/refresh_service.rb @@ -16,7 +16,7 @@ def execute(oldrev, newrev, ref) def refresh_merge_requests! # n + 1: https://gitlab.com/gitlab-org/gitlab-foss/issues/60289 - Gitlab::GitalyClient.allow_n_plus_1_calls(&method(:find_new_commits)) + Gitlab::GitalyClient.allow_n_plus_1_calls { find_new_commits } # Be sure to close outstanding MRs before reloading them to avoid generating an # empty diff during a manual merge diff --git a/app/services/packages/debian/generate_distribution_service.rb b/app/services/packages/debian/generate_distribution_service.rb index 9b313202400fc269e5a8a70b53acf367c0bf4996..faac3da023e8418f9d36c1a599badcd3e596fa13 100644 --- a/app/services/packages/debian/generate_distribution_service.rb +++ b/app/services/packages/debian/generate_distribution_service.rb @@ -106,7 +106,7 @@ def generate_component_file(component, component_file_type, architecture, packag .with_debian_architecture_name(architecture&.name) .with_debian_file_type(package_file_type) .find_each - .map(&method(:package_stanza_from_fields)) + .map { |package_file| package_stanza_from_fields(package_file) } reuse_or_create_component_file(component, component_file_type, architecture, paragraphs.join("\n")) end diff --git a/app/services/projects/container_repository/delete_tags_service.rb b/app/services/projects/container_repository/delete_tags_service.rb index a3e533c670e6ac31b8a1429d6e65ebb70906f0f6..9378bb313605a522f328f9ca7be3a1f87e066126 100644 --- a/app/services/projects/container_repository/delete_tags_service.rb +++ b/app/services/projects/container_repository/delete_tags_service.rb @@ -22,8 +22,9 @@ def execute(container_repository) private def delete_tags - delete_service.execute - .tap(&method(:log_response)) + delete_service + .execute + .tap { |response| log_response(response) } end def delete_service diff --git a/app/workers/gitlab/import/stuck_import_job.rb b/app/workers/gitlab/import/stuck_import_job.rb index efbea7d8133b49f92a0141daf7a7c68d2d121a8f..7278106efb9919deecb6f7d04df2316d4b76225d 100644 --- a/app/workers/gitlab/import/stuck_import_job.rb +++ b/app/workers/gitlab/import/stuck_import_job.rb @@ -37,7 +37,7 @@ def track_metrics(with_jid_count, without_jid_count) def mark_imports_without_jid_as_failed! enqueued_import_states_without_jid - .each(&method(:mark_as_failed)) + .each { |import_state| mark_as_failed(import_state) } .size end @@ -61,7 +61,7 @@ def mark_imports_with_jid_as_failed! ) completed_import_states - .each(&method(:mark_as_failed)) + .each { |import_state| mark_as_failed(import_state) } .size end diff --git a/app/workers/object_storage/migrate_uploads_worker.rb b/app/workers/object_storage/migrate_uploads_worker.rb index 3e681c3f111f034450eccc10e677e5823d5a7786..3fe4231bb55fdc21366a39c0151f2329c1bca942 100644 --- a/app/workers/object_storage/migrate_uploads_worker.rb +++ b/app/workers/object_storage/migrate_uploads_worker.rb @@ -99,7 +99,7 @@ def retrieve_applicable_args!(args) end def migrate(uploads) - uploads.map(&method(:process_upload)) + uploads.map { |upload| process_upload(upload) } end def process_upload(upload) diff --git a/config/initializers/0_inject_enterprise_edition_module.rb b/config/initializers/0_inject_enterprise_edition_module.rb index cc67e384d83f1f782b0953e13c9fcf89d0162386..b7e204d55b2142003cc6c8488474bc6da75c46b3 100644 --- a/config/initializers/0_inject_enterprise_edition_module.rb +++ b/config/initializers/0_inject_enterprise_edition_module.rb @@ -10,17 +10,15 @@ def prepend_mod_with(constant_name, namespace: Object, with_descendants: false) end def extend_mod_with(constant_name, namespace: Object) - each_extension_for( - constant_name, - namespace, - &method(:extend)) + each_extension_for(constant_name, namespace) do |constant| + extend constant + end end def include_mod_with(constant_name, namespace: Object) - each_extension_for( - constant_name, - namespace, - &method(:include)) + each_extension_for(constant_name, namespace) do |constant| + include constant + end end def prepend_mod(with_descendants: false) diff --git a/ee/app/finders/security/findings_finder.rb b/ee/app/finders/security/findings_finder.rb index 61b6cc7288a928704e320049b0d5c657806934b2..8c12d51c82a5d1ca09ea87e323393a9da27f5e90 100644 --- a/ee/app/finders/security/findings_finder.rb +++ b/ee/app/finders/security/findings_finder.rb @@ -44,7 +44,7 @@ def execute delegate :project, :has_security_findings?, to: :pipeline, private: true def findings - security_findings.map(&method(:build_vulnerability_finding)) + security_findings.map { |finding| build_vulnerability_finding(finding) } end def report_finding_for(security_finding) @@ -102,12 +102,12 @@ def all_security_findings .latest .page(page) .per(per_page) - .then(&method(:by_uuid)) - .then(&method(:by_confidence_levels)) - .then(&method(:by_report_types)) - .then(&method(:by_severity_levels)) - .then(&method(:by_scanner_external_ids)) - .then(&method(:by_state)) + .then { |relation| by_uuid(relation) } + .then { |relation| by_confidence_levels(relation) } + .then { |relation| by_report_types(relation) } + .then { |relation| by_severity_levels(relation) } + .then { |relation| by_scanner_external_ids(relation) } + .then { |relation| by_state(relation) } end def per_page diff --git a/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb b/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb index d1bc28b64584da933bf470fee8b724ada9163946..ac16ddab48e04a5b8f0b7c66e81ccff179aa09d0 100644 --- a/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb +++ b/ee/app/graphql/resolvers/vulnerabilities/scanners_resolver.rb @@ -11,7 +11,7 @@ def resolve(**args) vulnerable .vulnerability_scanners .with_report_type - .map(&Representation::VulnerabilityScannerEntry.method(:new)) + .map { |entry| Representation::VulnerabilityScannerEntry.new(entry) } end end end diff --git a/ee/app/services/dashboard/projects/create_service.rb b/ee/app/services/dashboard/projects/create_service.rb index e59fec9b28758e1ce046656d7432d6891a9b152f..e893d0abec2c0f452879307e7a9ee96c973909e2 100644 --- a/ee/app/services/dashboard/projects/create_service.rb +++ b/ee/app/services/dashboard/projects/create_service.rb @@ -64,7 +64,7 @@ def find_invalid_ids(projects_to_add, project_ids) end def add_projects(projects) - projects.partition(&method(:add_project)) + projects.partition { |project| add_project(project) } end def add_project(project) diff --git a/ee/app/services/security/ingestion/ingest_reports_service.rb b/ee/app/services/security/ingestion/ingest_reports_service.rb index 86d296261f9e85661816c20e4235e6378f43a7da..97b7aea7d863d04cc68eb8bde0cb15646148a57a 100644 --- a/ee/app/services/security/ingestion/ingest_reports_service.rb +++ b/ee/app/services/security/ingestion/ingest_reports_service.rb @@ -28,8 +28,9 @@ def execute delegate :project, to: :pipeline, private: true def store_reports - latest_security_scans.flat_map(&method(:ingest)) - .then(&method(:mark_resolved_vulnerabilities)) + latest_security_scans + .flat_map { |scan| ingest(scan) } + .then { |ids| mark_resolved_vulnerabilities(ids) } end def latest_security_scans diff --git a/ee/app/services/security/ingestion/tasks/ingest_vulnerability_statistics.rb b/ee/app/services/security/ingestion/tasks/ingest_vulnerability_statistics.rb index a1452e508ed2ae6d555eecbda993e7fc14f1547a..ea09605da9762df4df9d80cbcbf6b62794a89d1b 100644 --- a/ee/app/services/security/ingestion/tasks/ingest_vulnerability_statistics.rb +++ b/ee/app/services/security/ingestion/tasks/ingest_vulnerability_statistics.rb @@ -67,8 +67,8 @@ def update_values end def sql_safe_severity_counts - @sql_safe_severity_counts ||= severity_counts.transform_keys(&method(:quote_column_name)) - .transform_values(&method(:quote)) + @sql_safe_severity_counts ||= severity_counts.transform_keys { |key| quote_column_name(key) } + .transform_values { |value| quote(value) } end def severity_counts diff --git a/ee/app/services/security/store_grouped_scans_service.rb b/ee/app/services/security/store_grouped_scans_service.rb index f187bee2f976e6d0892022247bb7cc6716c12d02..ad0e5cea8b2b2f03e7727c312b9db45f8a9ac01b 100644 --- a/ee/app/services/security/store_grouped_scans_service.rb +++ b/ee/app/services/security/store_grouped_scans_service.rb @@ -44,7 +44,7 @@ def report_type end def sorted_artifacts - @sorted_artifacts ||= artifacts.each(&method(:prepare_report_for)).sort do |a, b| + @sorted_artifacts ||= artifacts.each { |artifact| prepare_report_for(artifact) }.sort do |a, b| report_a = a.security_report report_b = b.security_report diff --git a/ee/lib/ee/container_registry/client.rb b/ee/lib/ee/container_registry/client.rb index ba04eccdd7e59d234fa026cb13491a0bd1d86661..5840d5334073eb3f1804d11292727c1a84ee3655 100644 --- a/ee/lib/ee/container_registry/client.rb +++ b/ee/lib/ee/container_registry/client.rb @@ -78,7 +78,7 @@ def get_upload_url(name, digest) def faraday_raw strong_memoize(:faraday_raw) do faraday_base do |conn| - initialize_connection(conn, options, &method(:accept_raw_manifest)) + initialize_connection(conn, options) { |connection| accept_raw_manifest(connection) } end end end diff --git a/ee/lib/ee/gitlab/ci/config_ee.rb b/ee/lib/ee/gitlab/ci/config_ee.rb index 3e7ac7290344146abea2886e96e6947c3ba9b631..c08a2ddb77c8bdf6807924dc958a3db7b0327453 100644 --- a/ee/lib/ee/gitlab/ci/config_ee.rb +++ b/ee/lib/ee/gitlab/ci/config_ee.rb @@ -16,8 +16,8 @@ def rescue_errors override :build_config def build_config(config) super - .then(&method(:process_required_includes)) - .then(&method(:process_security_orchestration_policy_includes)) + .then { |config| process_required_includes(config) } + .then { |config| process_security_orchestration_policy_includes(config) } end def process_required_includes(config) diff --git a/ee/lib/ee/gitlab/etag_caching/router/rails.rb b/ee/lib/ee/gitlab/etag_caching/router/rails.rb index 23250b31d7d8bb01b158db821285e953475fc1b0..f03c9657cfc297e5ff3dd65ec4239d04164a9ede 100644 --- a/ee/lib/ee/gitlab/etag_caching/router/rails.rb +++ b/ee/lib/ee/gitlab/etag_caching/router/rails.rb @@ -29,7 +29,7 @@ def all_routes end def ee_routes - EE_ROUTE_DEFINITONS.map(&method(:build_rails_route)) + EE_ROUTE_DEFINITONS.map { |route_definition| build_rails_route(route_definition) } end end end diff --git a/ee/lib/gitlab/ingestion/bulk_insertable_task.rb b/ee/lib/gitlab/ingestion/bulk_insertable_task.rb index 75eedfe839ae3dbf6f729cd57400003ce9af92d3..71455b68745e58614234153d5ada8c54ec9d446b 100644 --- a/ee/lib/gitlab/ingestion/bulk_insertable_task.rb +++ b/ee/lib/gitlab/ingestion/bulk_insertable_task.rb @@ -93,7 +93,7 @@ def bulk_insert end def bulk_upsert - klass.bulk_upsert!(insert_objects, unique_by: unique_by, returns: uses, &method(:slice_attributes)) + klass.bulk_upsert!(insert_objects, unique_by: unique_by, returns: uses) { |attr| slice_attributes(attr) } end def after_ingest diff --git a/ee/spec/services/groups/participants_service_spec.rb b/ee/spec/services/groups/participants_service_spec.rb index 7981548ff5ca9deb6658567dbeb3ae235e4671c2..bda7337fb43424cbb3f7199b1e05ad74dab221ad 100644 --- a/ee/spec/services/groups/participants_service_spec.rb +++ b/ee/spec/services/groups/participants_service_spec.rb @@ -44,7 +44,7 @@ def user_to_autocompletable(user) service.instance_variable_set(:@noteable, epic) result = service.execute(epic) - expected_users = (@users + [user]).map(&method(:user_to_autocompletable)) + expected_users = (@users + [user]).map { |user| user_to_autocompletable(user) } expect(result).to include(*expected_users) end @@ -67,7 +67,7 @@ def user_to_autocompletable(user) result = service.execute(epic) expected_users = (group.self_and_hierarchy.flat_map(&:users) + subproject.users) - .map(&method(:user_to_autocompletable)) + .map { |user| user_to_autocompletable(user) } expect(expected_users.count).to eq(5) expect(result).to include(*expected_users) diff --git a/lib/peek/views/detailed_view.rb b/lib/peek/views/detailed_view.rb index 1301c6aa6fd1a7b3a27a45e81d85c9eb2560c3ac..c37c6bb8561eed9d35156f375b04096f296b80f0 100644 --- a/lib/peek/views/detailed_view.rb +++ b/lib/peek/views/detailed_view.rb @@ -33,7 +33,7 @@ def calls def details call_details .sort { |a, b| b[:duration] <=> a[:duration] } - .map(&method(:format_call_details)) + .map { |call| format_call_details(call) } end def warnings diff --git a/lib/unnested_in_filters/rewriter.rb b/lib/unnested_in_filters/rewriter.rb index ed1e4ce2d9fdadcd62e07502c4ef1ce80ecb79cf..9eb1c0b8273d27e3c36f427e3512ff9149b4723b 100644 --- a/lib/unnested_in_filters/rewriter.rb +++ b/lib/unnested_in_filters/rewriter.rb @@ -45,7 +45,7 @@ def serialized_arel_value def serialized_array_values values.map(&:value) - .then { array_type.serialize(_1) } + .then { |value| array_type.serialize(value) } .then { |array| quote(array) } end @@ -58,7 +58,7 @@ def sql_type end def column - columns.find { _1.name == attribute } + columns.find { |column| column.name == attribute } end def unprepared_statement_collector @@ -180,12 +180,12 @@ def log_rewrite end def filter_query - model.from(from).then { add_relation_defaults(_1) } + model.from(from).then { |relation| add_relation_defaults(relation) } end def index_only_filter_query model.where(model.primary_key => filter_query.select(model.primary_key)) - .then { add_relation_defaults(_1) } + .then { |relation| add_relation_defaults(relation) } end def add_relation_defaults(new_relation) @@ -229,7 +229,9 @@ def model_column_names # Actively filter any nodes that don't belong to the primary queried table to prevent sql type resolution issues # Context: https://gitlab.com/gitlab-org/gitlab/-/issues/370271#note_1151019824 def arel_in_nodes - where_clause_arel_nodes.select(&method(:in_predicate?)).select { model_column_names.include?(_1.left.name) } + where_clause_arel_nodes + .select { |arel_node| in_predicate?(arel_node) } + .select { |arel_node| model_column_names.include?(arel_node.left.name) } end # `ActiveRecord::WhereClause#ast` is returning a single node when there is only one @@ -270,7 +272,7 @@ def filter_attributes end def order_attributes - @order_attributes ||= order_values.flat_map(&method(:extract_column_name)) + @order_attributes ||= order_values.flat_map { |order_value| extract_column_name(order_value) } end def extract_column_name(order_value) diff --git a/qa/qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb b/qa/qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb index b70590e65c8f5f2ec32559520acc2381a2db4ae0..4e9d74a51179be3e0d8b82dce01547ebfe2fbcb2 100644 --- a/qa/qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb +++ b/qa/qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb @@ -45,7 +45,7 @@ def mailhog_json mailhog_data = JSON.parse(mailhog_response.body) total = mailhog_data.dig('total') subjects = mailhog_data.dig('items') - .map(&method(:mailhog_item_subject)) + .map { |item| mailhog_item_subject(item) } Runtime::Logger.debug(%Q[Total number of emails: #{total}]) Runtime::Logger.debug(%Q[Subjects:\n#{subjects.join("\n")}]) diff --git a/rubocop/cop/avoid_return_from_blocks.rb b/rubocop/cop/avoid_return_from_blocks.rb index 61edfd0a789e5854217733c69ca1679ca47efe9a..c6a7a87c548ba0db019187dc84fed93e85301c3e 100644 --- a/rubocop/cop/avoid_return_from_blocks.rb +++ b/rubocop/cop/avoid_return_from_blocks.rb @@ -32,7 +32,7 @@ def on_block(node) return unless top_block?(node) block_body.each_node(:return) do |return_node| - next if parent_blocks(node, return_node).all?(&method(:whitelisted?)) + next if parent_blocks(node, return_node).all? { |block_node| whitelisted?(block_node) } add_offense(return_node) end diff --git a/rubocop/cop/gitlab/mark_used_feature_flags.rb b/rubocop/cop/gitlab/mark_used_feature_flags.rb index d1722a47c8adec61ae30f177579d32aedf51663f..ffd59c8fffcf6cc9557fd38f50fc36fe8d087269 100644 --- a/rubocop/cop/gitlab/mark_used_feature_flags.rb +++ b/rubocop/cop/gitlab/mark_used_feature_flags.rb @@ -187,7 +187,7 @@ def trackable_flag?(node) # Marking all event's feature flags as used as Gitlab::UsageDataCounters::HLLRedisCounter.track_event{,context} # is mostly used with dynamic event name. def track_usage_data_counters_known_events! - usage_data_counters_known_event_feature_flags.each(&method(:save_used_feature_flag)) + usage_data_counters_known_event_feature_flags.each { |feature_flag_name| save_used_feature_flag(feature_flag_name) } end def usage_data_counters_known_event_feature_flags diff --git a/rubocop/rubocop.rb b/rubocop/rubocop.rb index 6b5491b27fc25a6c9ce75af0edae9580923c1fca..c17ecf054cea1907e8c1f68da73675fbbc85dc50 100644 --- a/rubocop/rubocop.rb +++ b/rubocop/rubocop.rb @@ -7,6 +7,6 @@ require_relative 'ext/variable_force' # Auto-require all cops under `rubocop/cop/**/*.rb` -Dir[File.join(__dir__, 'cop', '**', '*.rb')].sort.each(&method(:require)) +Dir[File.join(__dir__, 'cop', '**', '*.rb')].sort.each { |file| require file } # rubocop:enable Naming/FileName diff --git a/tooling/lib/tooling/find_codeowners.rb b/tooling/lib/tooling/find_codeowners.rb index 6a90f86eeccb33d0bfdbcfe6486805d4ddae0008..cc37d4db1ec70ab86e0ba07b4055cb1578e590b4 100644 --- a/tooling/lib/tooling/find_codeowners.rb +++ b/tooling/lib/tooling/find_codeowners.rb @@ -89,7 +89,7 @@ def normalize_pattern(pattern) end def consolidate_paths(matched_files) - matched_files.group_by(&File.method(:dirname)).flat_map do |dir, files| + matched_files.group_by { |file| File.dirname(file) }.flat_map do |dir, files| # First line is the dir itself if find_dir_maxdepth_1(dir).lines.drop(1).sort == files.sort "#{dir}\n" diff --git a/tooling/lib/tooling/test_map_packer.rb b/tooling/lib/tooling/test_map_packer.rb index 151ce88111f485ec0802811e1a44ba1bf85853c3..15191e35c54f21aae05b91d1e3ecd93634173bc4 100644 --- a/tooling/lib/tooling/test_map_packer.rb +++ b/tooling/lib/tooling/test_map_packer.rb @@ -6,11 +6,11 @@ class TestMapPacker MARKER = 1 def pack(map) - map.transform_values(&method(:create_tree_from_tests)) + map.transform_values { |tests| create_tree_from_tests(tests) } end def unpack(compact_map) - compact_map.transform_values(&method(:retrieve_tests_from_tree)) + compact_map.transform_values { |tree| retrieve_tests_from_tree(tree) } end private diff --git a/tooling/quality/test_level.rb b/tooling/quality/test_level.rb index 29da7dddd039f097958bafe9895bb056f7975ca5..7e164d9ecd5feb9513ef25d2c69ae23b3d30bbcf 100644 --- a/tooling/quality/test_level.rb +++ b/tooling/quality/test_level.rb @@ -116,7 +116,7 @@ def prefixes_for_pattern def prefixes_for_regex return '' if prefixes.empty? - regex_prefix = prefixes.map(&Regexp.method(:escape)).join('|') + regex_prefix = prefixes.map { |prefix| Regexp.escape(prefix) }.join('|') "(#{regex_prefix})" end