Read about our upcoming Code of Conduct on this issue

Commit 3c8ad106 authored by 🙈  jacopo beschi 🙉's avatar 🙈 jacopo beschi 🙉 Committed by Rémy Coutable
Browse files

Resolve "Make a Rubocop that forbids returning from a block"

parent 1754ff297b1a
......@@ -217,7 +217,7 @@ def note_serializer
def note_project
strong_memoize(:note_project) do
return nil unless project
next nil unless project
note_project_id = params[:note_project_id]
......@@ -228,7 +228,7 @@ def note_project
project
end
return access_denied! unless can?(current_user, :create_note, the_project)
next access_denied! unless can?(current_user, :create_note, the_project)
the_project
end
......
......@@ -15,7 +15,7 @@ def show
def update
if @group.update(group_variables_params)
respond_to do |format|
format.json { return render_group_variables }
format.json { render_group_variables }
end
else
respond_to do |format|
......
......@@ -60,13 +60,13 @@ def show
end
format.patch do
return render_404 unless @merge_request.diff_refs
break render_404 unless @merge_request.diff_refs
send_git_patch @project.repository, @merge_request.diff_refs
end
format.diff do
return render_404 unless @merge_request.diff_refs
break render_404 unless @merge_request.diff_refs
send_git_diff @project.repository, @merge_request.diff_refs
end
......
......@@ -12,7 +12,7 @@ def show
def update
if @project.update(variables_params)
respond_to do |format|
format.json { return render_variables }
format.json { render_variables }
end
else
respond_to do |format|
......
......@@ -479,7 +479,7 @@ def yaml_variables
def user_variables
Gitlab::Ci::Variables::Collection.new.tap do |variables|
return variables if user.blank?
break variables if user.blank?
variables.append(key: 'GITLAB_USER_ID', value: user.id.to_s)
variables.append(key: 'GITLAB_USER_EMAIL', value: user.email)
......@@ -594,7 +594,7 @@ def unscoped_project
def persisted_variables
Gitlab::Ci::Variables::Collection.new.tap do |variables|
return variables unless persisted?
break variables unless persisted?
variables
.append(key: 'CI_JOB_ID', value: id.to_s)
......@@ -643,7 +643,7 @@ def legacy_variables
def persisted_environment_variables
Gitlab::Ci::Variables::Collection.new.tap do |variables|
return variables unless persisted? && persisted_environment.present?
break variables unless persisted? && persisted_environment.present?
variables.concat(persisted_environment.predefined_variables)
......
......@@ -83,14 +83,14 @@ def own_activity?
def has_access?
DeclarativePolicy.subject_scope do
return false unless user.can?(:receive_notifications)
return true if @skip_read_ability
break false unless user.can?(:receive_notifications)
break true if @skip_read_ability
return false if @target && !user.can?(:read_cross_project)
return false if @project && !user.can?(:read_project, @project)
break false if @target && !user.can?(:read_cross_project)
break false if @project && !user.can?(:read_project, @project)
return true unless read_ability
return true unless DeclarativePolicy.has_policy?(@target)
break true unless read_ability
break true unless DeclarativePolicy.has_policy?(@target)
user.can?(read_ability, @target)
end
......
......@@ -1637,7 +1637,7 @@ def predefined_variables
def container_registry_variables
Gitlab::Ci::Variables::Collection.new.tap do |variables|
return variables unless Gitlab.config.registry.enabled
break variables unless Gitlab.config.registry.enabled
variables.append(key: 'CI_REGISTRY', value: Gitlab.config.registry.host_port)
......
......@@ -44,7 +44,7 @@ def execute
build.run!
register_success(build)
return Result.new(build, true)
return Result.new(build, true) # rubocop:disable Cop/AvoidReturnFromBlocks
rescue Ci::Build::MissingDependenciesError
build.drop!(:missing_dependency_failure)
end
......
......@@ -17,7 +17,7 @@ def execute(provider)
when 'DONE'
finalize_creation
else
return provider.make_errored!("Unexpected operation status; #{operation.status} #{operation.status_message}")
provider.make_errored!("Unexpected operation status; #{operation.status} #{operation.status_message}")
end
end
end
......
......@@ -19,8 +19,8 @@ def execute
environment.fire_state_event(action)
return unless environment.save
return if environment.stopped?
break unless environment.save
break if environment.stopped?
deploy.tap(&:update_merge_request_metrics!)
end
......
......@@ -10,7 +10,7 @@ def initialize(mmin = LAST_MODIFIED_TIME_IN_MINUTES)
def execute
Gitlab::Metrics.measure(:import_export_clean_up) do
return unless File.directory?(path)
next unless File.directory?(path)
clean_up_export_files
end
......
......@@ -137,7 +137,7 @@ def remove_legacy_registry_tags
return true unless Gitlab.config.registry.enabled
ContainerRepository.build_root_repository(project).tap do |repository|
return repository.has_tags? ? repository.delete_tags! : true
break repository.has_tags? ? repository.delete_tags! : true
end
end
......
......@@ -10,7 +10,7 @@ def initialize(mmin = LAST_MODIFIED_TIME_IN_MINUTES)
def execute
Gitlab::Metrics.measure(:repository_archive_clean_up) do
return unless File.directory?(path)
next unless File.directory?(path)
clean_up_old_archives
clean_up_empty_directories
......
......@@ -19,7 +19,7 @@ def execute
error_message = catch(:validation_error) do
sample_data = self.__send__(trigger_data_method) # rubocop:disable GitlabSecurity/PublicSend
return hook.execute(sample_data, trigger_key)
return hook.execute(sample_data, trigger_key) # rubocop:disable Cop/AvoidReturnFromBlocks
end
error(error_message)
......
......@@ -33,7 +33,7 @@ def process_project_changes(post_received)
unless @user
log("Triggered hook for non-existing user \"#{post_received.identifier}\"")
return false
return false # rubocop:disable Cop/AvoidReturnFromBlocks
end
if Gitlab::Git.tag_ref?(ref)
......
......@@ -38,7 +38,7 @@ def drop(status, timeout)
def drop_stuck(status, timeout)
search(status, timeout) do |build|
return unless build.stuck?
break unless build.stuck?
drop_build :stuck, build, status, timeout
end
......
---
title: Rubocop rule to avoid returning from a block
merge_request: 18000
author: Jacopo Beschi @jacopo-beschi
type: added
......@@ -25,7 +25,7 @@ class Discussions < Grape::API
get ":id/#{noteables_str}/:noteable_id/discussions" do
noteable = find_noteable(parent_type, noteables_str, params[:noteable_id])
return not_found!("Discussions") unless can?(current_user, noteable_read_ability_name(noteable), noteable)
break not_found!("Discussions") unless can?(current_user, noteable_read_ability_name(noteable), noteable)
notes = noteable.notes
.inc_relations_for_view
......@@ -50,7 +50,7 @@ class Discussions < Grape::API
notes = readable_discussion_notes(noteable, params[:discussion_id])
if notes.empty? || !can?(current_user, noteable_read_ability_name(noteable), noteable)
return not_found!("Discussion")
break not_found!("Discussion")
end
discussion = Discussion.build(notes, noteable)
......@@ -98,7 +98,7 @@ class Discussions < Grape::API
notes = readable_discussion_notes(noteable, params[:discussion_id])
if notes.empty? || !can?(current_user, noteable_read_ability_name(noteable), noteable)
return not_found!("Notes")
break not_found!("Notes")
end
present notes, with: Entities::Note
......@@ -117,8 +117,8 @@ class Discussions < Grape::API
noteable = find_noteable(parent_type, noteables_str, params[:noteable_id])
notes = readable_discussion_notes(noteable, params[:discussion_id])
return not_found!("Discussion") if notes.empty?
return bad_request!("Discussion is an individual note.") unless notes.first.part_of_discussion?
break not_found!("Discussion") if notes.empty?
break bad_request!("Discussion is an individual note.") unless notes.first.part_of_discussion?
opts = {
note: params[:body],
......
......@@ -31,7 +31,7 @@ class GroupVariables < Grape::API
key = params[:key]
variable = user_group.variables.find_by(key: key)
return not_found!('GroupVariable') unless variable
break not_found!('GroupVariable') unless variable
present variable, with: Entities::Variable
end
......@@ -67,7 +67,7 @@ class GroupVariables < Grape::API
put ':id/variables/:key' do
variable = user_group.variables.find_by(key: params[:key])
return not_found!('GroupVariable') unless variable
break not_found!('GroupVariable') unless variable
variable_params = declared_params(include_missing: false).except(:key)
......
......@@ -50,7 +50,7 @@ class Internal < Grape::API
access_checker.check(params[:action], params[:changes])
@project ||= access_checker.project
rescue Gitlab::GitAccess::UnauthorizedError, Gitlab::GitAccess::NotFoundError => e
return { status: false, message: e.message }
break { status: false, message: e.message }
end
log_user_activity(actor)
......@@ -142,21 +142,21 @@ class Internal < Grape::API
if key
key.update_last_used_at
else
return { 'success' => false, 'message' => 'Could not find the given key' }
break { 'success' => false, 'message' => 'Could not find the given key' }
end
if key.is_a?(DeployKey)
return { success: false, message: 'Deploy keys cannot be used to retrieve recovery codes' }
break { success: false, message: 'Deploy keys cannot be used to retrieve recovery codes' }
end
user = key.user
unless user
return { success: false, message: 'Could not find a user for the given key' }
break { success: false, message: 'Could not find a user for the given key' }
end
unless user.two_factor_enabled?
return { success: false, message: 'Two-factor authentication is not enabled for this user' }
break { success: false, message: 'Two-factor authentication is not enabled for this user' }
end
codes = nil
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment