diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 31962cf4..0730a6d1 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -6,50 +6,6 @@ # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. -# Offense count: 1 -Lint/HandleExceptions: - Exclude: - - 'test/adapters/rack_test.rb' - -# Offense count: 1 -Lint/ReturnInVoidContext: - Exclude: - - 'lib/faraday/options/env.rb' - -# Offense count: 2 -# Cop supports --auto-correct. -Lint/UnneededRequireStatement: - Exclude: - - 'lib/faraday.rb' - - 'lib/faraday/utils.rb' - -# Offense count: 6 -# Cop supports --auto-correct. -# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments. -Lint/UnusedBlockArgument: - Exclude: - - 'lib/faraday/encoders/nested_params_encoder.rb' - - 'lib/faraday/request/retry.rb' - - 'spec/faraday/options/options_spec.rb' - - 'test/adapters/test_middleware_test.rb' - -# Offense count: 5 -# Cop supports --auto-correct. -# Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods. -Lint/UnusedMethodArgument: - Exclude: - - 'lib/faraday/adapter.rb' - - 'lib/faraday/adapter/em_http.rb' - - 'lib/faraday/adapter/em_synchrony.rb' - - 'script/generate_certs' - - 'spec/faraday/response/middleware_spec.rb' - -# Offense count: 1 -# Configuration parameters: CheckForMethodsWithNoSideEffects. -Lint/Void: - Exclude: - - 'lib/faraday/connection.rb' - # Offense count: 41 Metrics/AbcSize: Max: 86 @@ -63,7 +19,7 @@ Metrics/BlockLength: # Offense count: 5 # Configuration parameters: CountComments. Metrics/ClassLength: - Max: 217 + Max: 216 # Offense count: 20 Metrics/CyclomaticComplexity: diff --git a/lib/faraday.rb b/lib/faraday.rb index 520dd3c7..1b1d9727 100644 --- a/lib/faraday.rb +++ b/lib/faraday.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -require 'thread' require 'cgi' require 'set' require 'forwardable' diff --git a/lib/faraday/adapter.rb b/lib/faraday/adapter.rb index 36831153..12bc303f 100644 --- a/lib/faraday/adapter.rb +++ b/lib/faraday/adapter.rb @@ -35,7 +35,7 @@ module Faraday extend Parallelism self.supports_parallel = false - def initialize(app = nil, opts = {}, &block) + def initialize(_app = nil, opts = {}, &block) @app = lambda { |env| env.response } @connection_options = opts @config_block = block diff --git a/lib/faraday/adapter/em_http.rb b/lib/faraday/adapter/em_http.rb index ad8d8083..cdc65fab 100644 --- a/lib/faraday/adapter/em_http.rb +++ b/lib/faraday/adapter/em_http.rb @@ -90,7 +90,7 @@ module Faraday self.supports_parallel = true # @return [Manager] - def self.setup_parallel_manager(options = nil) + def self.setup_parallel_manager(_options = nil) Manager.new end diff --git a/lib/faraday/adapter/em_synchrony.rb b/lib/faraday/adapter/em_synchrony.rb index 4838eeb1..e9ca56ab 100644 --- a/lib/faraday/adapter/em_synchrony.rb +++ b/lib/faraday/adapter/em_synchrony.rb @@ -17,7 +17,7 @@ module Faraday self.supports_parallel = true # @return [ParallelManager] - def self.setup_parallel_manager(options = {}) + def self.setup_parallel_manager(_options = nil) ParallelManager.new end diff --git a/lib/faraday/connection.rb b/lib/faraday/connection.rb index 9f662402..6a450a68 100644 --- a/lib/faraday/connection.rb +++ b/lib/faraday/connection.rb @@ -403,8 +403,6 @@ module Faraday # conn.path_prefix # => "/api" # # conn.get("nigiri?page=2") # accesses https://sushi.com/api/nigiri - # - # @return [URI] the parsed URI from the given input def url_prefix=(url, encoder = nil) uri = @url_prefix = Utils.URI(url) self.path_prefix = uri.path @@ -416,8 +414,6 @@ module Faraday basic_auth user, password uri.user = uri.password = nil end - - uri end # Sets the path prefix and ensures that it always has a leading diff --git a/lib/faraday/encoders/nested_params_encoder.rb b/lib/faraday/encoders/nested_params_encoder.rb index ea2fcca1..313fb3f0 100644 --- a/lib/faraday/encoders/nested_params_encoder.rb +++ b/lib/faraday/encoders/nested_params_encoder.rb @@ -52,7 +52,7 @@ module Faraday return new_parent if value.empty? buffer = +'' - value.each_with_index do |val, i| + value.each do |val| buffer << "#{to_query.call(new_parent, val)}&" end return buffer.chop diff --git a/lib/faraday/options/env.rb b/lib/faraday/options/env.rb index b2c71a10..9a201403 100644 --- a/lib/faraday/options/env.rb +++ b/lib/faraday/options/env.rb @@ -92,7 +92,10 @@ module Faraday # @param key [Object] # @param value [Object] def []=(key, value) - return super(current_body, value) if key == :body + if key == :body + super(current_body, value) + return + end if in_member_set?(key) super(key, value) diff --git a/lib/faraday/request/retry.rb b/lib/faraday/request/retry.rb index a9fcab10..3ab0beb0 100644 --- a/lib/faraday/request/retry.rb +++ b/lib/faraday/request/retry.rb @@ -29,7 +29,7 @@ module Faraday :backoff_factor, :exceptions, :methods, :retry_if, :retry_block, :retry_statuses) - DEFAULT_CHECK = lambda { |env, exception| false } + DEFAULT_CHECK = lambda { |_env, _exception| false } def self.from(value) if Integer === value diff --git a/lib/faraday/utils.rb b/lib/faraday/utils.rb index 415f795e..221b2242 100644 --- a/lib/faraday/utils.rb +++ b/lib/faraday/utils.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require 'thread' - require 'faraday/utils/headers' require 'faraday/utils/params_hash' diff --git a/script/generate_certs b/script/generate_certs index e9379c13..538b9065 100755 --- a/script/generate_certs +++ b/script/generate_certs @@ -11,7 +11,7 @@ $shell = ARGV.include? '-s' # Adapted from WEBrick::Utils. Skips cert extensions so it # can be used as a CA bundle -def create_self_signed_cert(bits, cname, comment) +def create_self_signed_cert(bits, cname, _comment) rsa = OpenSSL::PKey::RSA.new(bits) cert = OpenSSL::X509::Certificate.new cert.version = 2 diff --git a/spec/faraday/options/options_spec.rb b/spec/faraday/options/options_spec.rb index 79d6b55f..a9d73199 100644 --- a/spec/faraday/options/options_spec.rb +++ b/spec/faraday/options/options_spec.rb @@ -255,7 +255,7 @@ RSpec.describe Faraday::Options do context 'when the fetched key has no value' do it 'uses falsey default' do - expect(subject.fetch(:sub_a, false) { |k| :blah }).to be_falsey + expect(subject.fetch(:sub_a, false) { |_| :blah }).to be_falsey end it 'accepts block' do @@ -273,7 +273,7 @@ RSpec.describe Faraday::Options do end it 'grabs value' do - expect(subject.fetch(:sub_a, false) { |k| :blah }).to eq(1) + expect(subject.fetch(:sub_a, false) { |_| :blah }).to eq(1) end it 'works with key' do diff --git a/spec/faraday/response/middleware_spec.rb b/spec/faraday/response/middleware_spec.rb index e5b18f5f..3c3adf27 100644 --- a/spec/faraday/response/middleware_spec.rb +++ b/spec/faraday/response/middleware_spec.rb @@ -29,7 +29,7 @@ RSpec.describe Faraday::Response::Middleware do context 'with a custom ResponseMiddleware but empty response' do let(:custom_middleware) do Class.new(Faraday::Response::Middleware) do - def parse(body) + def parse(_body) raise 'this should not be called' end end diff --git a/test/adapters/rack_test.rb b/test/adapters/rack_test.rb index 44cd11d3..1204f91c 100644 --- a/test/adapters/rack_test.rb +++ b/test/adapters/rack_test.rb @@ -28,7 +28,7 @@ module Adapters conn = create_connection(request: { timeout: 1, open_timeout: 1 }) begin conn.get '/slow' - rescue Faraday::ClientError + rescue Faraday::ClientError # rubocop:disable Lint/HandleExceptions end end diff --git a/test/adapters/test_middleware_test.rb b/test/adapters/test_middleware_test.rb index dbc07500..5b0ff8b3 100644 --- a/test/adapters/test_middleware_test.rb +++ b/test/adapters/test_middleware_test.rb @@ -16,7 +16,7 @@ module Adapters stub.get(/\A\/resources\/\d+(?:\?|\z)/) do [200, { 'Content-Type' => 'text/html' }, 'show'] end - stub.get(/\A\/resources\/(specified)\z/) do |env, meta| + stub.get(/\A\/resources\/(specified)\z/) do |_env, meta| [200, { 'Content-Type' => 'text/html' }, "show #{meta[:match_data][1]}"] end stub.get('http://domain.test/hello') do